PDFium Delphi Component pe scurt
| Produs | PDFium Delphi Component — SDK profesional cu cod sursă pentru aplicații PDF în Delphi, C++Builder și Lazarus |
|---|---|
| Potrivit pentru | Livrarea de cititoare PDF de mare performanță, instrumente de revizuire, fluxuri de lucru cu documente și experiențe de lectură accesibile în aplicații native |
| Suport IDE | Delphi și C++Builder de la XE5 la 13.1 Florence (Win32, Win64); Lazarus / Free Pascal LCL |
| Rolul motorului | PDFium — familia de motoare open-source din spatele afișării PDF din Chromium — asigură randarea paginilor și citirea documentelor; DLL-uri opționale de runtime V8 / XFA |
| Stratul aplicației | 115.000 de linii de Object Pascal în 55 de unități, 475 de membri publici TPdf și 152 pe TPdfView, incluzând straturile de vizualizare, serializare, semnare, criptare, standarde și accesibilitate pe care PDFium nu le oferă |
| Semnături digitale | Semnare PAdES B-B / B-T / B-LT / B-LTA (ETSI EN 319 142-1), containere CMS / CAdES, marcare temporală RFC 3161, Document Security Store |
| Criptare | Scriere PDF 2.0 AES-256 (ISO 32000-2), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC, pe o stivă AES / SHA / HMAC / ASN.1 scrisă integral în Pascal |
| Standarde | Validatoare PDF/A (părțile 1-4), PDF/X (până la X-6), PDF/UA, PDF/E, PDF/VT (până la VT-2s) și PDF/R, cu ajutoare de salvare și de injectare a marcajelor |
| Ieșire PDF | Serializator propriu: Fast Web View liniarizat, împachetare în fluxuri de obiecte și fluxuri xref, revizii incrementale ale obiectelor modificate, copii de reparare verificate |
| Resurse pentru cititor | 34 de proiecte gata de rulare: cititoare profesionale de referință, laboratoare de interacțiune, ateliere de accesibilitate, instrumente de standarde și preflight, laboratoare de text CJK și RTL |
| Fișiere mari | Accesul la cerere evită o copie completă în memorie pentru documente de mai mulți gigaocteți; randare paralelă a paginilor și stocare de lucru limitată |
| Cod sursă | Codul sursă Object Pascal complet este inclus în fiecare licență |
| Licențiere | Fără redevențe, plată unică între $350 și $4200 în funcție de nivel; reînnoire la 40% din prețul de listă |
| Versiunea curentă | 3.51.0 (2026-08-16) |
| Evaluare | Descărcare gratuită a pachetului demo |
Unde se oprește motorul și unde începe produsul
PDFium este un motor de randare. Desenează pagini, extrage text și citește structuri existente — și cam atât. Nu are semnare, nu are scriere de criptare, nu are validator de standarde, nu are liniarizare, nu are scriere de revizii incrementale și nu are suport XFDF sau XMP. O simplă legare la API-ul C al PDFium moștenește exact aceleași limite.
PDFium Delphi Component livrează aproximativ 115.000 de linii de Object Pascal în 55 de unități. Peste 62.000 dintre aceste linii se află în 36 de unități care nu au niciun corespondent în API-ul PDFium — criptografie, semnături, criptare, cele șase validatoare de standarde, serializatorul PDF, XFDF, XMP, așezarea în pagină și modelarea textului. Scrise în Pascal, verificate față de clauzele publicate ISO, ETSI, IETF și FIPS și livrate ca sursă cu fiecare licență.
| Capabilitate | Motorul PDFium | Implementat de PDFium Delphi Component |
|---|---|---|
| Semnături digitale | Citește doar dicționarele de semnătură existente | Semnare PAdES B-B / B-T / B-LT / B-LTA, construcție CMS / CAdES SignedData conform RFC 5652, client de marcare temporală RFC 3161, injectare DSS și VRI, chei prin Windows CNG (RSA-PSS, PKCS#1, ECDSA), semnare la distanță și cu HSM în care cheia privată nu părăsește niciodată serviciul, plus validarea încrederii în lanțul de certificate |
| Criptare | Deschide fișiere criptate, dar nu poate scrie criptare | ISO 32000-2 AES-256 (derivare de cheie V5 / R6 după algoritmul 2.B), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC și criptarea completă a tuturor fluxurilor și șirurilor |
| Primitive criptografice | Niciuna expusă | Object Pascal pur: AES-128/256 în CBC și GCM, SHA-256/384/512, SHA-3, HMAC și cititor / scriitor ASN.1 DER, verificate față de vectorii de test FIPS 197 și FIPS 180-4 |
| Conformitate cu standardele | Niciun validator de niciun fel | PDF/A părțile 1-4, PDF/X până la X-6, PDF/UA-1, PDF/E-1, PDF/VT-1/2/2s și PDF/R-1 — validatoare la nivel de clauză, injectare de marcaje și ajutoare de salvare adaptate profilului |
| Serializare PDF | O singură salvare secvențială a întregului fișier | Fast Web View liniarizat cu tabele de indicii conform Anexei F, împachetare în fluxuri de obiecte și fluxuri xref, revizii incrementale ale obiectelor modificate care păstrează octet cu octet fișierul anterior și copii de reparare verificate în mod strict |
| Documente deteriorate | Recuperare tăcută, fără raport | Politici de încărcare strictă, compatibilă și de recuperare, cu diagnostice structurate: calea de reconstrucție, pozițiile coruperii, reviziile contradictorii și starea bugetelor |
| Schimb de date de formular | Niciun API XFDF sau FDF | Import și export XFDF (ISO 19444-1) și FDF pentru valorile câmpurilor și 18 subtipuri de adnotări |
| Metadate | Citește dicționarul info clasic | Cititor și scriitor de pachete XMP cu containere tipizate, folosit de fiecare profil de standard |
| Rețea și scalare | Apeluri inverse pe intervale de octeți, nimic peste ele | Sesiuni progresive de document, un planificator prioritizat de intervale de octeți cu deduplicare, fuziune, reluare limitată și anulare, randare paralelă a paginilor și stocare de lucru limitată care se revarsă într-un fișier temporar șters la închidere |
| Stratul aplicației | Handle-uri și apeluri inverse C | Trei componente VCL / LCL înregistrate, 475 de membri publici TPdf și 152 pe TPdfView, starea vizualizatorului, miniaturi, sesiuni de lectură și 34 de proiecte gata de rulare |
În loc să proiecteze de la zero starea vizualizatorului, interacțiunea, randarea asincronă, maparea textului, focalizarea formularelor, navigarea între pagini, comportamentul de accesibilitate, containerele de semnătură, dicționarele de criptare și scriitorii de revizii, echipele pornesc de la componente testate și arhitecturi funcționale de cititor, apoi adaptează codul sursă Object Pascal livrat la propriul produs.
Deschidere aproape instantanee a fișierelor PDF mari: În teste interne cu fișiere de 2.x GB, accesul căutabil la cerere a făcut prima vizualizare utilizabilă înainte ca documentul să fie citit integral; rezultatele reale depind de stocare, de structura documentului și de hardware.
Folosiți exemplele de vizualizator și fluxul de test pentru fișiere mari pentru a repeta măsurătoarea de la deschidere la prima vizualizare cu propriile PDF-uri, propria stocare și hardware-ul țintă.
Folosiți componenta atunci când experiența PDF trebuie să fie în aplicația dvs., nu într-un vizualizator extern. Pachetul include componente vizuale și nevizuale, cod sursă Object Pascal, aplicații profesionale de referință pentru cititoare, exemple de flux de lucru bine delimitate, DLL-uri PDFium, DLL-uri opționale de runtime compatibile V8 / XFA, exemple de preflight în linie de comandă, teste de regresie și documentație atât pentru integrarea la nivel de aplicație, cât și pentru operații PDF de nivel jos.
PDFium VCL Component acceptă Delphi de la XE5 la Delphi 13.1 Florence și C++Builder de la XE5 la C++Builder 13.1 Florence, cu ținte Win32 și Win64. PDFium LCL Component include fișiere de pachet și demonstrații Lazarus / Free Pascal pentru fluxurile de lucru LCL.
Capacități principale
- API-uri de aplicație de nivel înalt: Lucrați cu obiecte de document și de vizualizare native pentru Delphi, în loc să conectați handle-uri PDFium brute în fiecare ecran, sarcină de fundal, flux de formulare și cale de eliberare a resurselor.
- Interfața vizualizatorului: Plasați
TPdfViewpe un formular pentru zoom, rotație, moduri de încadrare, dispuneri pe o pagină și continue, pagini duble conștiente de copertă, umbre de pagină, clicuri sigure pe linkuri, selecție de text, copiere în clipboard și fluxuri de focalizare a formularelor. - Navigare cu miniaturi: Adăugați
TPdfThumbnailViewlângă vizualizator pentru miniaturi derulabile ale paginilor, cu efect de hover, evidențierea selecției și navigare prin clic. - Randare: Randați pagini și dale în bitmap-uri, folosiți scrieri DIB fără copiere acolo unde este posibil, rulați randare progresivă anulabilă, randați un set de pagini în paralel prin
RenderPagesParallel, accesați hook-uri Skia de nivel jos când DLL-ul încărcat le exportă și mențineți paginile mari receptive. - Streaming și fișiere mari: Încărcați din disc, din memorie, din tablouri de octeți sau din fluxuri căutabile personalizate, cu citiri PDFium la cerere, astfel încât documentele mari sau aflate la distanță să nu necesite o copie completă în memorie.
- Pornire pe fișiere mari: Începeți revizuirea PDF-urilor de mai mulți gigaocteți fără a aștepta o copiere completă în memorie; vizualizatorul folosește acces PDFium căutabil, la cerere, și citește blocuri de document pe măsură ce sunt necesare.
- Text și căutare: Extrageți textul paginii, căutați înainte sau înapoi, evidențiați potrivirile, construiți liste de rezultate pentru toate paginile și inspectați dreptunghiurile caracterelor, originile, unghiurile, caracterele generate, familia de font, greutatea, dimensiunea, ascendentul, descendentul și starea de încorporare a fontului.
- Text structurat:
GetStructuredTextconstruiește o ierarhie de pagină, bloc, linie și intervale stilizate pornind de la geometria caracterelor, metadatele fontului, identitatea obiectelor de text și semantica Tagged PDF, cu ordonare de rezervă după așezarea fizică atunci când documentul nu are etichete. - Extragerea tabelelor:
ExtractTablesșiExtractDocumentTablescombină casetele cuvintelor cu liniile de traseu transformate pentru a detecta tabele cu chenar și tabele aliniate prin spațiere, păstrează celulele fuzionate, atribuie scoruri de încredere, marchează continuările de pagină și exportă CSV sau JSON. - Reflow semantic în HTML:
BuildReflowDocumenttransformă un PDF cu așezare fixă într-un arbore de noduri reutilizabil, iar ieșirea HTML sigură păstrează titlurile, paragrafele, listele, figurile, secțiunile de pagină și celulele de tabel — pentru afișare responsivă, accesibilitate și reutilizarea conținutului. - Formulare: Lucrați cu câmpuri AcroForm, detectarea stării XFA, disponibilitatea ajutoarelor opționale V8 / XFA, textul selectat din formular, anulare și refacere în formulare, aspecte generate, indicatori de câmp și aplatizare.
- Schimb de date de formular: Exportați și importați atât XFDF (ISO 19444-1), cât și FDF (ISO 32000-1 §12.7.11) pentru valorile câmpurilor și 18 subtipuri de adnotări — formate pentru care PDFium nu expune niciun API, implementate în Pascal peste modelul propriu de adnotări și câmpuri al componentei.
- Integrare OCR: Conectați orice motor de recunoaștere la
IPdfOcrProvider, primiți bitmap-uri de pagină într-un format de pixeli definit, returnați patrulaterele cuvintelor și lăsați componenta să scrie stratul de text căutabil, cu raportare de stare pe pagină și omiterea paginilor care au deja text. - Adnotări și linkuri: Creați, ștergeți, numărați și inspectați adnotări; gestionați linkuri de pagină, linkuri web, destinații de marcaje, acțiuni JavaScript ale documentului, suprafețe de risc URI și Launch și evenimente de clic în vizualizator.
- Asamblarea documentelor: Creați documente, adăugați sau ștergeți pagini, importați intervale de pagini după etichetă sau index fizic, mutați pagini, compuneți pagini N-up, reutilizați pagini ca Form XObjects, aplicați filigrane sau ștampile, actualizați conținutul paginii și gestionați casetele de pagină.
- Ieșire PDF și revizii: Salvați fișiere Fast Web View liniarizate cu tabele de indicii pentru offseturile paginilor și obiectele partajate, împachetați obiectele în fluxuri de obiecte cu acoperire completă xref de tip 2, adăugați revizii incrementale ale obiectelor modificate care păstrează octet cu octet ieșirea anterioară și produceți copii de reparare reverificate printr-o încărcare strictă independentă înainte de livrare.
- Semnături digitale: Semnați la nivelurile PAdES B-B, B-T, B-LT sau B-LTA; construiți CMS / CAdES SignedData cu atributele semnate cerute de profil; solicitați token-uri RFC 3161 de la un TSA; colectați lanțul de certificate într-un Document Security Store; adăugați mărci temporale de arhivă; și validați orice document față de verificări PAdES la nivel de clauză și față de încrederea în lanțul de certificate, sincron sau asincron.
- Semnare la distanță și cu HSM: Împărțiți operația în două cu
PreparePadesRemoteSignatureșiCompletePadesRemoteSignature— aplicația produce un document cu substituent și o cerere de semnare portabilă ce conține amprenta SHA-256, un serviciu la distanță sau un modul hardware returnează structura CMS detașată, iar componenta o injectează. Cheia privată nu trebuie să ajungă niciodată pe stația de lucru. - Criptare și integritate: Scrieți criptare PDF 2.0 AES-256 cu derivare de cheie R6 corectă și blocuri de permisiuni, folosiți ISO/TS 32003 AES-GCM acolo unde este necesar, atașați token-uri ISO/TS 32004 PDF MAC și bazați-vă pe primitive AES, SHA-2, SHA-3, HMAC și ASN.1 scrise în Object Pascal, fără nicio dependență C externă.
- Inspecția conținutului și a securității: Extrageți imagini, randați bitmap-uri de obiecte, inspectați limitele și transparența obiectelor, citiți atașamente, metadate, semnături, permisiuni, limbă, etichete de pagină, moduri de pagină, preferințe de vizualizare, structura Tagged PDF și identificatorii de fișier.
TPdfStreamInspectordecodifică obiecte de flux arbitrare sub bugete explicite de sursă, date brute, dimensiune decodificată, raport de expansiune și număr de fluxuri, astfel încât o bombă de decompresie returnează o stare structurată în loc să epuizeze memoria. - Lectură accesibilă: Construiți unități de lectură la nivel de propoziție, mapați textul rostit înapoi la conținutul PDF, controlați evidențierile de lectură la nivel de cuvânt, navigați între câmpurile de formular, inspectați structura etichetată și aplicați transformări de bitmap pentru persoane cu vedere scăzută în fluxuri de lectură asistivă.
- Rapoarte preflight: Generați rapoarte de audit orientate pe standarde, cu câmpuri de trecere, acțiune necesară, revizuire, prioritate, categorie de problemă, număr pe categorii și acțiune următoare; exportați TXT, HTML și Markdown lizibile sau JSON, CSV, SARIF 2.1.0, JUnit XML și NDJSON citibile automat; produceți amprente SHA-256 stabile ale rapoartelor; rulați rezumate pe loturi; atașați rapoarte la copiile de revizuire; și controlați o compilare prin codul de ieșire al utilitarului de linie de comandă.
- Tipărire: Tipăriți cu intervale de pagini, număr de copii, preferințe de scalare, compoziție N-up, filtrare pagini pare / impare, ieșire în tonuri de gri, metadate de preferințe ale vizualizatorului și
SetPdfPrintPaperHandlingDevModepentru integrarea cu duplexul și manipularea hârtiei.
Fluxuri de lucru PDF conforme
PDFium Delphi Component expune API-uri de validare și de salvare orientate pe standarde pentru echipele care au nevoie de predare PDF previzibilă, revizuire pentru arhivă, fluxuri de tipărire, verificări de accesibilitate, documente de inginerie, ieșire cu date variabile sau livrare blocată în raster.
| Flux de lucru | Suport în PDFium Delphi Component | Responsabilitatea aplicației |
|---|---|---|
| PDF/A | ValidatePdfA, SaveAsPdfA și PdfAConformance acoperă ISO 19005 părțile 1-4 — inclusiv profilurile A-4, A-4f și A-4e bazate pe PDF 2.0 — cu verificări OutputIntent, verificări de metadate XMP, verificări de încorporare a fonturilor, verificări de structură RoleMap și ParentTree, limitele de implementare din Anexa C, restricții de criptare și JavaScript și ajutoare de salvare adaptate profilului. | Alegeți ținta de arhivare, furnizați metadate și date de culoare corecte și analizați orice problemă de validare raportată înainte de livrare. |
| PDF/X | ValidatePdfX, SaveAsPdfX și PdfXConformance de la X-1a până la X-6 bazat pe PDF 2.0, cu gestionarea OutputIntent și ICC, restricții de transparență și spații de culoare în funcție de profil, verificări geometrice TrimBox / ArtBox / BleedBox și verificări de profil sigure pentru tipar. | Furnizați date OutputIntent adecvate producției, geometria paginii și setările de tipărire pentru profilul PDF/X vizat. |
| PDF/UA | ValidatePdfUa, SaveAsPdfUa, PdfUaConformance, verificări de limbă și etichetare, inspecția arborelui de structură, revizuirea conținutului marcat și validarea profilului de accesibilitate. | Creați o ordine de lectură coerentă, titluri, liste, semantică de tabel, text alternativ și limba documentului în fluxul sursă. |
| PDF/E, PDF/VT, PDF/R | ValidatePdfE, ValidatePdfVT și ValidatePdfR, API-urile SaveAs... corespunzătoare și proprietăți de conformitate pentru profilurile PDF de inginerie, date variabile și raster. PDF/VT acoperă ierarhii DPart, metadate de părți de document și împachetare VT-2s în fluxuri MIME cu mai multe părți; PDF/E injectează un OutputIntent sRGB încorporat; PDF/R impune o singură imagine pe pagină și lista de codificări permise. | Potriviți profilul cu fluxul de lucru de business și mențineți conținutul sursă în setul de funcții permis de standardul ales. |
| Semnături PAdES | SignPades, SignPadesToStream, SignPadesBytes, SaveAsPadesDss și ValidatePadesCompliance acoperă nivelurile de bază B-B, B-T, B-LT și B-LTA din ETSI EN 319 142-1, cu marcare temporală RFC 3161, injectare Document Security Store, marcaje de extensie ESIC și 26 de coduri de validare la nivel de clauză. SignPadesWithPdfA combină conversia pentru arhivă și semnarea într-un singur flux. | Furnizați certificatul de semnare și lanțul acestuia, alegeți un punct final TSA pentru nivelurile cu marcă temporală și definiți politica organizației privind păstrarea și revocarea. |
| Automatizare preflight | FPdfPreflightReport și PreflightReportCli agregă rezultatele PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R și PDF/VT în TXT, HTML și Markdown lizibile sau în JSON, CSV, SARIF 2.1.0, JUnit XML și NDJSON citibile automat, cu ordonare deterministă și amprente SHA-256 stabile. | Decideți dacă rezultatele de trecere, acțiune necesară, revizuire sau numărul de probleme trebuie să blocheze CI, livrarea sau ingestia în arhivă. |
Aceste API-uri sunt concepute pentru a face vizibilă în cod munca legată de standarde. Rezultatele validării, rezumatele preflight și ajutoarele de salvare permit aplicației dvs. să respingă sau să corecteze ieșirile problematice, în loc să livreze în tăcere un fișier care eșuează abia mai târziu într-un flux de arhivare, de tipărire sau de accesibilitate. Validatoarele integrate se concentrează pe verificări la nivel de marcaj și pe verificări selectate la nivel de fișier; echipele care au nevoie de certificare formală la nivel de conținut ar trebui să le combine cu motorul lor dedicat de validare.
Arhitectura componentei
TPdf: Componentă de document nevizuală pentru încărcare, acces la fluxuri, salvare, randare, căutare, extragere, validare, acces la formulare, operații de pagină, metadate, atașamente, adnotări, raportare preflight și fluxuri de profil PDF.TPdfView: Componentă vizuală de vizualizare pentru moduri de afișare, interacțiunea utilizatorului, linkuri, derulare, zoom, selecție, focalizarea formularelor, evidențiere, navigare între pagini și fluxuri de clipboard.TPdfThumbnailView: Panou lateral derulabil cu miniaturi pentru navigarea între pagini, urmărirea paginii curente, feedback la hover și dispuneri alături de vizualizator.- Unități ajutătoare: 55 de unități Object Pascal în total. Dincolo de legarea la motor, ele se grupează în criptografie (
FPdfAes,FPdfAesGcm,FPdfSha256,FPdfSha512,FPdfSha3,FPdfHmac,FPdfAsn1), semnare (FPdfPades,FPdfCms,FPdfTsa,FPdfCryptoWin), standarde (FPdfPdfa,FPdfPdfx,FPdfPdfua,FPdfPdfe,FPdfPdfvt,FPdfPdfr,FPdfPreflightReport), serializare și integritate (FPdfCompress,FPdfEncrypt,FPdfMac,FPdfStreamInspect,FPdfContentNormalize) și servicii de conținut (FPdfXfdf,FPdfXmp,FPdfLayout,FPdfMeasure,FPdfTextShaping,FPdfStructTree,FPdfAsync,FPdfMatrix).
Fiecare unitate de mai sus este cod sursă pe care îl primiți și îl puteți parcurge pas cu pas. Primitivele criptografice sunt scrise în Object Pascal și verificate față de vectorii de test publicați în FIPS 197 și FIPS 180-4, astfel încât semnarea și criptarea nu adaugă nicio bibliotecă C externă la implementarea dvs. și niciun binar terț la analiza de securitate.
Descărcați pachetul demo PDFium Delphi Component
2026-08-16 Version 3.51.0: Note de lansare PDFium Delphi Component | Referința API. 3.51.0 face publici opt membri TPdf anterior inaccesibili, așa cum sunt documentați, și completează referința în limba engleză astfel încât fiecare membru public al TPdf și TPdfView să aibă propria pagină — 88 de membri au primit una — împreună cu enumerările și înregistrările accesibile din semnăturile publice.
Licențiere și prețuri
Plătiți cu card de credit/debit, PayPal, AliPay sau transfer bancar prin 2Checkout. Fiecare licență nouă PDFium Delphi Component include codul sursă Object Pascal, un an de actualizări și un an de suport prin email.
| Licență | Dezvoltatori | Preț (plată unică) | Comandă |
|---|---|---|---|
| Single | 1 dezvoltator | $350 | Cumpărați PDFium Delphi Component Single |
| Small Business | Până la 10 dezvoltatori | $700 | Cumpărați PDFium Delphi Component Small Business |
| Medium Business | Până la 30 de dezvoltatori | $1050 | Cumpărați PDFium Delphi Component Medium Business |
| Enterprise | Toți dezvoltatorii dintr-o companie și filialele ei dintr-o singură țară | $2100 | Cumpărați PDFium Delphi Component Enterprise |
| Corporate | Toți dezvoltatorii dintr-o companie și filialele ei din întreaga lume | $4200 | Cumpărați PDFium Delphi Component Corporate |
Alegerea licenței: Alegeți nivelul care acoperă numărul dvs. de dezvoltatori: Single (1 dezvoltator), Small Business (până la 10) sau Medium Business (până la 30). Enterprise acoperă toți dezvoltatorii dintr-o companie și filialele ei dintr-o singură țară; Corporate extinde aceeași acoperire la nivel mondial.
Surse suplimentare pentru Enterprise și Corporate: Atât PDFium Delphi Component Enterprise, cât și Corporate includ codul sursă complet pentru exemplul dedicat la nivel de instrument PDF Intake & Accessibility Review Workbench Pro. Codul sursă al suitelor de teste complete, folosite în mod normal doar pentru validarea internă, este disponibil la cerere.
Reînnoire pentru clienții existenți: Reînnoiți în termen de 90 de zile de la expirarea serviciului de actualizări, la 40% din prețul de listă curent; după 90 de zile, contactați-ne pentru un link de recomandă cu reducere. Deschideți pagina de achiziție și reînnoire PDFium Delphi Component.
Aplicații profesionale de referință pentru cititoare
Pachetul merge dincolo de fragmente izolate de API. Cele 34 de proiecte gata de rulare arată cum lucrează împreună componentele în fluxuri complete de aplicație, oferind echipelor puncte de plecare testate pentru interfață de producție, interacțiune, performanță, revizuire, standarde, securitate și accesibilitate. Fiecare demonstrație pornește cu conținut deja încărcat, astfel încât primul clic face ceva, în loc să ceară un fișier.
- PDFViewer: O bază completă de cititor, cu selecție de text, căutare, marcaje, navigare între pagini, tipărire, linkuri, moduri de afișare, miniaturi și conectarea evenimentelor pe care o cere un vizualizator desktop real.
- MultiPageViewer: Comportament continuu, pe pagini duble, conștient de copertă și cu mai multe pagini, pentru aplicații de revizuire care au nevoie de mai mult decât o singură pagină randată.
- SplitView: Două vizualizări sincronizate ale aceluiași document, pentru comparație, consultare și revizuire.
- ViewerInteractionLab și SearchAndSelect: Tipare de interacțiune reutilizabile pentru moduri de încadrare, culori de pagină, rotație, evidențierea căutării, liste de rezultate pe toate paginile, previzualizarea textului selectat, fluxuri de clipboard și maparea coordonatelor.
- AccessibilityReader și AccessibilityLab: Sesiuni de citire cu voce tare, integrare cu motorul de sinteză vocală al gazdei, unități de lectură la nivel de propoziție, evidențieri la nivel de cuvânt, navigare în formulare, inspecția structurii etichetate și moduri de afișare pentru vedere scăzută.
Exemple de flux de lucru dincolo de cititor
- ContentExtractionLab: Un singur flux pentru metadate, text, obiecte de pagină, imagini, atașamente, linkuri, adnotări, marcaje, fonturi și metrici de caractere, cu export TXT / JSON.
- PDFtoJpg, BatchExport și ImageToPDF: Export raster, conversie pe loturi de mai multe fișiere, încărcare din flux, controale DPI și de calitate, introducerea parolei, progres și anulare cooperativă.
- MergePDF, SplitPDF, CreatePDF și WatermarkStamp: Asamblare de documente, creare programatică de PDF, filigrane reutilizabile ca Form XObject, ștampile de colț și etichete de număr de pagină.
- FormFill, FontProperties și Attachment: Editarea și aplatizarea valorilor din formulare, inspecția indexată a fonturilor și caracterelor și extragerea sau crearea fișierelor încorporate.
- SecurityAudit: Inspecție în regim doar-citire pentru permisiuni, atașamente, JavaScript, linkuri URI și Launch, linkuri web, semnături, stare XFA, disponibilitatea ajutoarelor de runtime și rapoarte de audit TXT / JSON.
- XfdfLab și XfaLab: Parcurgeți dus-întors datele de formular și adnotările prin XFDF și FDF și testați detectarea stării XFA cu runtime-ul opțional compatibil V8 / XFA.
- CJKTextLab și RTLTextLab: Tratarea textului chinez, japonez, coreean, arab și ebraic — extragere, căutare, geometria selecției și comportamentul de modelare pe scrieri unde presupunerile naive despre ordinea caracterelor cedează.
- AnnotationsLab și NavigationLab: Crearea și editarea adnotărilor de marcare cu geometrie în patru puncte, plus tipare de navigare prin marcaje, destinații, acțiuni denumite și etichete de pagină.
- AccessibilityWorkbenchCli și IntakeWorkbenchCli: Fluxuri fără interfață pentru revizuire și preluare, potrivite pentru evaluarea accesibilității pe loturi și pentru primirea documentelor în sarcini programate și în CI, nu într-o fereastră desktop.
- StandardsLab, PreflightReport și PreflightReportCli: Fluxuri de validare și salvare PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R și PDF/VT, previzualizări de rapoarte, export TXT / HTML / Markdown / JSON / CSV, foldere pe loturi, rezumate sortate, nume de raport fără duplicate, atașarea rapoartelor și comportament de ieșire
failon=orientat pe CI.
De ce aleg echipele PDFium Delphi Component
- Semnare și criptare fără un al doilea furnizor: PAdES de la B-B la B-LTA, marcarea temporală RFC 3161 și criptarea PDF 2.0 AES-256 fac parte din această bibliotecă. Majoritatea echipelor Delphi ajung aici adăugând un SDK separat de semnare sau o instalare OpenSSL; aici este un singur pachet, o singură licență și cod sursă Pascal pe care îl puteți audita.
- Munca pe standarde este vizibilă în cod: Șase familii de standarde ISO au validatoare reale, cu coduri de rezultat la nivel de clauză, nu o simplă bifă. Ieșirea preflight în TXT, HTML, Markdown, JSON și CSV se conectează direct în CI, iar utilitarul de linie de comandă returnează un cod de eroare pentru condițiile pe care le alegeți.
- Un scriitor PDF pe care motorul nu îl are: Fast Web View liniarizat, împachetare în fluxuri de obiecte și revizii incrementale ale obiectelor modificate care păstrează octet cu octet fișierul anterior — exact formatele de ieșire pe care le cer sistemele de arhivare, livrarea web și pistele de audit.
- Un strat de aplicație, nu doar funcții importate: Trei componente înregistrate, 475 de membri publici
TPdfși 152 peTPdfView, acoperind starea documentului, interacțiunea cu vizualizatorul, randarea, textul, formularele, adnotările, tipărirea, accesibilitatea, validarea și cod de flux de lucru repetabil. - Cititoare profesionale pe care le puteți studia și extinde: 34 de proiecte gata de rulare — vizualizator, mai multe pagini, vizualizare divizată, interacțiune, căutare, standarde, audit de securitate, text CJK și RTL și lectură accesibilă — scurtează drumul de la prima evaluare la un cititor specific produsului.
- Performanță gândită pentru documente reale: Încărcare căutabilă la cerere, căi de randare direct în DIB, randare progresivă anulabilă, randare paralelă a paginilor și stocare de lucru limitată care se revarsă într-un fișier temporar în loc să epuizeze memoria.
- Accesibilitate dincolo de o bifă: Sesiunile de lectură, unitățile de lectură, maparea vorbirii la pagină, evidențierile la nivel de cuvânt, transformările pentru vedere scăzută, accesul la formulare și inspecția structurii etichetate susțin experiențe de lectură asistivă.
- Datele de intrare ostile sunt tratate ca ostile: Decodificarea fluxurilor, normalizarea conținutului și scanarea structurii rulează toate sub bugete explicite de sursă, ieșire, token-uri, imbricare și raport de expansiune, astfel încât un PDF malformat sau creat intenționat returnează o stare structurată în loc să oprească procesul.
- Calitatea de randare PDFium: Folosiți familia de motoare open-source din spatele afișării PDF din Chromium, păstrând totodată stratul de aplicație și codul sursă în propria bază de cod.
- Fără redevențe la rulare: Construiți aplicații desktop fără taxe pe document sau pe utilizator final.
- Sursă, acoperire IDE și teste întreținute: Cod sursă Object Pascal complet, Delphi și C++Builder de la XE5 la 13.1 Florence, suport Lazarus / Free Pascal și acoperire automată pentru fluxurile de document, randare, formulare, structură, tipărire, miniaturi, semnare, criptare, standarde și vizualizare.
Lectura accesibilă ca funcție de aplicație
Suportul de accesibilitate face parte din arhitectura cititorului, nu este doar un rezultat de validare. TPdfReadingSession coordonează unitățile de lectură la nivel de propoziție, mapările textului rostit și evenimentele de cuvânt, astfel încât un motor de sinteză vocală al gazdei să poată menține narațiunea sincronizată cu pagina.
Cititorul de accesibilitate livrat demonstrează integrarea cu serviciile de voce ale gazdei, evidențierile de lectură la nivel de cuvânt, fluxul vocal reglabil, unitățile de lectură căutabile, accesul la formulare orientat pe tastatură și modurile de afișare pentru vedere scăzută. Inspecția structurii etichetate și verificările orientate pe PDF/UA ajută echipele să înțeleagă semantica documentului, iar validarea dedicată rămâne potrivită atunci când este necesară certificarea formală.
Documentația online PDFium Delphi Component
Exemplu de cod
procedure TForm1.OpenPdf(const FileName: string);
begin
Pdf.FileName := FileName;
PdfView.Pdf := Pdf;
PdfThumbnailView.Pdf := Pdf;
PdfView.DisplayMode := dmSingleContinuous;
PdfView.FitMode := pfmFitWidth;
PdfView.AllowUserTextSelection := True;
PdfView.Active := True;
end;
procedure TForm1.HighlightInvoiceNumber;
begin
Pdf.PageNumber := PdfView.PageNumber;
if Pdf.FindFirst('Invoice', []) >= 0 then
PdfView.HighlightSearchText('Invoice', False, False);
end;
procedure TForm1.SaveArchiveCopy(const OutputFile: string);
begin
if not Pdf.SaveAsPdfA(OutputFile, pac1b) then
raise Exception.Create('The PDF/A archive copy could not be saved.');
end;
procedure TForm1.SignForLongTermArchive(const OutputFile: string);
var
Options: TPadesSignOptions;
begin
Options := TPadesSignOptions.Default;
Options.CertificateThumbprint := SignerThumbprint;
Options.Level := plB_LTA; // semnătură + token TSA + DSS + marcă temporală de arhivă
Options.TsaUrl := 'https://tsa.example.com/tsr';
Options.Reason := 'Approved for release';
if not Pdf.SignPades(OutputFile, Options) then
raise Exception.Create('The document could not be signed.');
end;
procedure TForm1.CheckSignatureLevel;
var
Result: TPadesValidationResult;
begin
Result := Pdf.ValidatePades;
if Result.IsCompliantAt(plB_LTA) and Result.IsCryptographicallyValid then
ShowMessage(Format('%d signature(s), %d archive time-stamp(s), verified.',
[Result.SignatureCount, Result.DocTimeStampCount]))
else
ShowMessage('The document does not reach the required PAdES baseline.');
end;
Cazuri de utilizare tipice
- Cititoare de documente accesibile, cu control al citirii cu voce tare, evidențiere sincronizată a cuvintelor, navigare în formulare, inspecția structurii etichetate și moduri de afișare pentru vedere scăzută.
- Sisteme de management al documentelor cu vizualizare PDF încorporată, căutare, tipărire și fluxuri de formulare.
- Aplicații de contabilitate și facturare care au nevoie de revizuire PDF, extragere, gestionarea atașamentelor, verificări de ieșire pregătită pentru arhivă, manifeste preflight pe loturi și atașarea rapoartelor.
- Software desktop juridic, tehnic, medical și guvernamental, unde utilizatorii trebuie să inspecteze, să tipărească, să valideze, să raporteze și să păstreze documente PDF fără a părăsi aplicația.
- Fluxuri cu documente semnate în sectoare reglementate — contracte, facturi, avize de expediție și înregistrări care trebuie să poarte o semnătură PAdES B-T sau B-LTA cu marcă temporală de încredere și să rămână verificabile ani de zile.
- Distribuție confidențială care necesită criptare PDF 2.0 AES-256 cu permisiuni definite, scrisă de aplicație, nu de un instrument extern într-o a doua trecere.
- Instrumente de conformitate și de preluare care au nevoie de verificări repetabile PDF/A, PDF/X, PDF/UA, PDF/E, PDF/R sau PDF/VT înainte de a trimite fișierele către validatoare externe sau sisteme de arhivă.
- Vizualizatoare de rapoarte și instrumente interne de business care au nevoie de afișare PDF rapidă, rasterizare a paginilor, text copiabil și tipărire controlată.
Când să alegeți PDFium Delphi Component
- Alegeți PDFium Delphi Component atunci când aplicația trebuie să vizualizeze, să verifice, să semneze, să cripteze și să livreze documente PDF: baze profesionale de cititor, semnare PAdES, criptare PDF 2.0, șase validatoare de standarde, ieșire liniarizată și incrementală, performanță pe fișiere mari, suport de accesibilitate, formulare și tipărire, toate dintr-un singur pachet cu cod sursă.
- Alegeți HotPDF Delphi Component atunci când aplicația generează documente și preferați să nu redistribuiți niciun motor de randare: HotPDF are propriul motor de randare, propriile codecuri de imagine, propriul motor de fonturi, generare de coduri de bare, așezare XFA și validare Factur-X și se compilează direct în executabilul dvs.
- Alegeți PDF Library for Delphi atunci când un singur set de instrumente trebuie să acopere întregul ciclu de viață sau când aveți nevoie de OCR, citire de coduri de bare, semnare PKCS#11 cu token hardware, validare față de listele de încredere UE ori acces prin DLL, ActiveX sau Dylib pentru apelanți din afara Delphi.
Comparați întreaga familie? Consultați prezentarea generală a bibliotecilor PDF pentru dezvoltatori pentru o comparație directă între PDFium Delphi Component, losLab PDF Library și HotPDF Delphi Component.
Întrebări frecvente
PDFium Delphi Component este doar un înveliș subțire peste DLL-ul PDFium?
Nu. PDFium redă și citește; nu poate semna un document, nu poate scrie criptare, nu poate valida un standard PDF și nu poate emite revizii liniarizate, fluxuri de obiecte sau revizii incrementale. Peste 62.000 dintre cele aproximativ 115.000 de linii de Object Pascal din pachet se află în unități fără corespondent în API-ul PDFium și implementează exact aceste straturi: semnare PAdES de la B-B la B-LTA, o stivă criptografică AES / SHA / ASN.1 scrisă integral în Pascal, criptare PDF 2.0 AES-256, șase validatoare de standarde ISO, un serializator PDF propriu, XFDF, XMP și arhitectura de vizualizator, cititor și accesibilitate.
Ce motor folosește PDFium Delphi Component?
PDFium Delphi Component folosește PDFium — aceeași familie de motoare open-source din spatele afișării PDF din Chromium — pentru randarea paginilor și citirea documentelor. Tot ce nu oferă motorul este implementat de losLab în Object Pascal: modelul de componente, stratul de serializare și revizii PDF, semnăturile digitale, criptarea, validarea standardelor, arhitectura de cititor, stratul de accesibilitate, exemplele și testele.
Poate PDFium Delphi Component să semneze digital documente PDF?
Da. Implementează profilurile de bază PAdES B-B, B-T, B-LT și B-LTA din ETSI EN 319 142-1: construcția CMS / CAdES SignedData conform RFC 5652, cereri de marcare temporală RFC 3161 către un TSA, colectarea lanțului de certificate într-un Document Security Store și mărci temporale de arhivă. Cheile de semnare sunt folosite prin backendul Windows CNG cu RSA-PSS, PKCS#1 sau ECDSA. PDFium în sine poate doar citi dicționarele de semnătură existente.
Poate cripta documente PDF?
Da. SaveAsEncrypted scrie criptare ISO 32000-2 AES-256, inclusiv derivarea R6 a hash-ului de parolă din algoritmul 2.B, intrările de dicționar /O, /U, /OE, /UE și /Perms și criptarea completă a fluxurilor și șirurilor. Sunt acceptate ISO/TS 32003 AES-GCM și token-urile ISO/TS 32004 PDF MAC. Primitivele AES, SHA-256/384/512, HMAC și ASN.1 sunt scrise integral în Object Pascal, fără nicio dependență C externă.
PDFium Delphi Component acceptă Lazarus și Free Pascal?
Da. Pachetul include fișiere de pachet Lazarus / Free Pascal și demonstrații LCL alături de componentele VCL pentru Delphi și C++Builder, acoperind Delphi și C++Builder de la XE5 la 13.1 Florence, cu ținte Win32 și Win64.
Cât de repede deschide fișiere PDF foarte mari?
Vizualizatorul folosește acces PDFium căutabil, la cerere, în loc de o încărcare completă în avans. În teste interne cu fișiere de 2.x GB, prima vizualizare a devenit utilizabilă înainte ca documentul să fie citit integral; rezultatele reale depind de stocare, de structura documentului și de hardware.
Poate PDFium Delphi Component să creeze sau să editeze documente PDF?
Acoperă asamblarea documentelor: crearea de documente, adăugarea și ștergerea paginilor, importul de intervale de pagini, mutarea paginilor, compoziția N-up, filigrane, ștampile și actualizări de conținut al paginii. Pentru crearea programatică intensă de PDF-uri, HotPDF Delphi Component sau losLab PDF Library sunt mai potrivite.
Gestionează formulare AcroForm și XFA?
Da. Lucrează cu câmpuri AcroForm, focalizarea formularelor și textul selectat, anulare și refacere, aspecte generate, indicatori de câmp și aplatizare, detectează starea XFA și poate folosi DLL-uri opționale de runtime compatibile V8 / XFA atunci când aceste funcții sunt necesare.
Ce standarde PDF poate valida?
Șase familii de standarde, fiecare cu propriul validator și cu ajutorul corespunzător de salvare sau de injectare a marcajelor: PDF/A (ISO 19005 părțile 1-4, inclusiv A-4 base/f/e bazate pe PDF 2.0), PDF/X (ISO 15930, inclusiv X-6), PDF/UA (ISO 14289-1), PDF/E (ISO 24517-1), PDF/VT (ISO 16612-2, inclusiv împachetarea VT-2s în fluxuri MIME) și PDF/R (ISO 23504-1). Structura de bază PAdES este validată separat față de ETSI EN 319 142-1. Rapoartele preflight se exportă ca TXT, HTML, Markdown, JSON, CSV, SARIF 2.1.0, JUnit XML și NDJSON. Validatoarele acoperă nivelul de marcaj și un set tot mai mare de clauze la nivel de fișier; combinați-le cu un motor de validare dedicat atunci când este necesară certificarea formală.
Există redevențe de rulare sau taxe pe utilizator?
Nu. Aplicațiile licențiate se distribuie fără redevențe, fără taxe pe document sau pe utilizator final.
Ce include o licență și cum funcționează reînnoirea?
O licență nouă ($350 Single, $700 Small Business (până la 10 dezvoltatori), $1050 Medium Business (până la 30 de dezvoltatori), $2100 Enterprise (o companie, o țară), $4200 Corporate (o companie, la nivel mondial)) include codul sursă Object Pascal, un an de actualizări și un an de suport prin email. Clienții existenți reînnoiesc accesul la actualizări pentru 40% din prețul integral.
Descoperiți mai multe despre dezvoltarea Delphi PDF Component și Spreadsheet
Abonați-vă la actualizări ale produselor
Abonați-vă pentru a primi cele mai recente actualizări pe e-mail.
