SDK PDFium con sorgente

PDFium Delphi Component per Delphi, C++Builder e Lazarus

Crea visualizzatori PDF e workflow documentali pronti per la produzione senza dover progettare da zero il livello applicativo intorno a PDFium. PDFium Delphi Component combina componenti VCL e LCL nativi per Delphi, API documentali di alto livello, applicazioni di lettura professionali di riferimento, prestazioni con file grandi, strumenti di accessibilità e sorgente Object Pascal completo.

Visualizzatore PDF PDFium Delphi Component per Delphi

PDFium Delphi Component In sintesi

ProdottoPDFium Delphi Component — SDK professionale per applicazioni PDF fornito con il codice sorgente, per Delphi, C++Builder e Lazarus
Ideale perRilasciare lettori PDF ad alte prestazioni, strumenti di revisione, flussi di lavoro documentali ed esperienze di lettura accessibili in applicazioni native
Supporto IDEDelphi e C++Builder da XE5 a 13.1 Florence (Win32, Win64); Lazarus / Free Pascal LCL
Ruolo del motorePDFium — la famiglia di motori open source alla base della visualizzazione PDF di Chromium — gestisce il rendering delle pagine e la lettura dei documenti; DLL di runtime V8 / XFA opzionali
Livello applicativo115.000 righe di Object Pascal in 55 unit, 475 membri pubblici di TPdf e 152 su TPdfView, compresi i livelli di visualizzatore, serializzazione, firma, cifratura, standard e accessibilità che PDFium non fornisce
Firme digitaliFirma PAdES B-B / B-T / B-LT / B-LTA (ETSI EN 319 142-1), contenitori CMS / CAdES, marcatura temporale RFC 3161, Document Security Store
CifraturaScrittura della cifratura AES-256 di PDF 2.0 (ISO 32000-2), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC, su uno stack AES / SHA / HMAC / ASN.1 interamente in Pascal
StandardValidatori PDF/A (parti 1-4), PDF/X (fino a X-6), PDF/UA, PDF/E, PDF/VT (fino a VT-2s) e PDF/R, con funzioni di salvataggio e iniezione dei marcatori
Output PDFSerializzatore proprietario: Fast Web View linearizzato, impacchettamento in object stream e xref stream, revisioni incrementali dei soli oggetti modificati, copie di riparazione verificate
Risorse per lettori34 progetti pronti all’uso: riferimenti di lettori professionali, laboratori di interazione, banchi di lavoro per l’accessibilità, strumenti di standard e preflight, laboratori di testo CJK e RTL
File di grandi dimensioniL’accesso su richiesta evita una copia integrale in memoria per documenti di più gigabyte; rendering delle pagine in parallelo e memoria di lavoro limitata
Codice sorgenteCodice sorgente Object Pascal completo incluso in ogni licenza
LicenzeSenza royalty, pagamento una tantum da $350-$4200 in base al livello; rinnovo al 40 % del prezzo di listino
Versione attuale3.51.0 (2026-08-16)
ValutazioneDownload gratuito del pacchetto dimostrativo

Dove finisce il motore e comincia il prodotto

PDFium è un motore di rendering. Disegna le pagine, estrae il testo e legge le strutture esistenti, e finisce lì. Non firma, non scrive cifratura, non valida alcuno standard, non linearizza, non scrive revisioni incrementali e non supporta XFDF né XMP. Un binding dell’API C di PDFium eredita esattamente questi limiti.

PDFium Delphi Component fornisce circa 115.000 righe di Object Pascal distribuite su 55 unità. Oltre 62.000 di quelle righe si trovano in 36 unità che non hanno alcun corrispettivo nell’API di PDFium: crittografia, firme, cifratura, i sei validatori di standard, il serializzatore PDF, XFDF, XMP, l’impaginazione e lo shaping del testo. Scritte in Pascal, verificate rispetto alle clausole pubblicate da ISO, ETSI, IETF e FIPS, e consegnate come sorgente con ogni licenza.

FunzionalitàMotore PDFiumImplementato da PDFium Delphi Component
Firme digitaliLegge soltanto i dizionari di firma esistentiFirma PAdES B-B / B-T / B-LT / B-LTA, SignedData CMS / CAdES conforme a RFC 5652, client di marcatura temporale RFC 3161, iniezione di DSS e VRI, chiavi Windows CNG (RSA-PSS, PKCS#1, ECDSA), firma remota / HSM in cui la chiave privata non lascia mai il servizio, e validazione della fiducia della catena di certificati
CifraturaApre file cifrati; non è in grado di scrivere la cifraturaAES-256 secondo ISO 32000-2 (derivazione della chiave V5 / R6, algoritmo 2.B), AES-GCM ISO/TS 32003, PDF MAC ISO/TS 32004 e cifratura completa di stream e stringhe
Primitive crittograficheNessuna espostaAES-128/256 CBC e GCM, SHA-256/384/512, SHA-3, HMAC, lettore e scrittore ASN.1 DER, tutto in Object Pascal puro e verificato con i vettori di test FIPS 197 e FIPS 180-4
Conformità agli standardNessun validatore di alcun tipoPDF/A parti da 1 a 4, PDF/X fino a X-6, PDF/UA-1, PDF/E-1, PDF/VT-1/2/2s e PDF/R-1: validatori a livello di clausola, iniezione di marcatori e helper di salvataggio consapevoli del profilo
Serializzazione PDFUn unico salvataggio sequenziale dell’intero fileFast Web View linearizzato con hint table dell’allegato F, impacchettamento in object stream e xref stream, revisioni incrementali per oggetti modificati che preservano il prefisso byte per byte, e copie di riparazione riverificate in modalità strict
Documenti danneggiatiRecupero silenzioso, senza reportPolitiche di caricamento strict, compatible e recovery con diagnostica strutturata: percorso di ricostruzione, offset di corruzione, revisioni in conflitto e stato dei budget
Scambio di dati dei moduliNessuna API XFDF o FDFImportazione ed esportazione XFDF (ISO 19444-1) e FDF per i valori dei campi e 18 sottotipi di annotazione
MetadatiLegge il classico dizionario infoLettore e scrittore di pacchetti XMP con contenitori tipizzati, usati da ogni profilo di standard
Rete e scalabilitàCallback su intervalli di byte, e nulla al di sopraSessioni di documento progressive, scheduler di intervalli di byte con priorità, deduplicazione, fusione, tentativi limitati e annullamento, rendering delle pagine in parallelo, e memoria di lavoro limitata che riversa i dati su un file temporaneo eliminato alla chiusura
Livello applicativoHandle e callback CTre componenti VCL / LCL registrati, 475 membri pubblici di TPdf e 152 su TPdfView, stato del visualizzatore, miniature, sessioni di lettura e 34 progetti pronti da eseguire

Più di un binding per PDFium

PDFium Delphi Component è un livello completo per lo sviluppo di applicazioni PDF costruito sopra PDFium, non una traduzione sottile dell'API C di PDFium. Trasforma il motore in componenti visivi e non visivi nativi per Delphi con workflow riutilizzabili per visualizzazione, rendering, ricerca, moduli, annotazioni, stampa, accessibilità, report preflight e ispezione dei documenti.

Invece di progettare da zero stato del visualizzatore, interazione, rendering asincrono, mappatura del testo, focus sui moduli, navigazione delle pagine, comportamento di accessibilità e ciclo di vita dei documenti, i team possono partire da componenti collaudati e architetture di lettori funzionanti, quindi adattare alla propria applicazione il sorgente Object Pascal fornito.

Apertura quasi istantanea di PDF di grandi dimensioni: in test reali su file di grandi dimensioni, PDF da oltre 2 GB che fanno attendere 20-30 secondi i principali lettori PDF prima della prima visualizzazione possono diventare quasi immediatamente utilizzabili con PDFium Delphi Component.

Usalo quando l'esperienza PDF deve essere all'interno della tua applicazione invece che in un visualizzatore esterno. Il pacchetto include componenti visivi e non visivi, codice sorgente Object Pascal, progetti demo, DLL PDFium, DLL runtime opzionali con capacità V8/XFA, esempi preflight da riga di comando, test di regressione e documentazione sia per l'integrazione del visualizzatore sia per le operazioni PDF di basso livello.

Il PDFium VCL Component supporta Delphi XE5 fino a Delphi 13.1 Florence e C++Builder XE5 fino a C++Builder 13.1 Florence, con target Win32 e Win64. Il PDFium LCL Component include file di pacchetto Lazarus/Free Pascal e demo per i workflow LCL.

Funzionalità principali

  • API applicative di alto livello: lavora con oggetti documento e visualizzatore nativi Delphi invece di cablare handle PDFium grezzi in ogni schermata, attività in background, workflow dei moduli e percorso di rilascio.
  • UI visualizzatore: inserisci TPdfView in un form per zoom, rotazione, modalità di adattamento, layout a pagina singola e continuo, spread con rilevamento della copertina, ombre delle pagine, click sicuri sui link, selezione di testo da parte dell'utente, copia negli appunti e workflow di messa a fuoco dei moduli.
  • Navigazione tramite miniature: aggiungi TPdfThumbnailView accanto al visualizzatore per miniature di pagina scorrevoli con hover, evidenziazione della selezione e navigazione tramite click.
  • Rendering: esegui il rendering di pagine e sezioni in bitmap, usa scritture DIB zero-copy dove possibile, avvia rendering progressivo annullabile, esegui il rendering di un insieme di pagine in parallelo con RenderPagesParallel, accedi agli hook Skia di basso livello quando la DLL caricata li esporta, e mantieni le pagine di grandi dimensioni reattive.
  • Streaming e file di grandi dimensioni: carica da disco, memoria, array di byte o stream seekable personalizzati con letture PDFium su richiesta, in modo che documenti di grandi dimensioni o con backing remoto non richiedano una copia in memoria anticipata.
  • Avvio con file di grandi dimensioni: inizia a esaminare PDF multi-gigabyte rapidamente; il visualizzatore usa accesso PDFium seekable su richiesta, quindi documenti da oltre 2 GB possono diventare utilizzabili quasi immediatamente invece di attendere un caricamento completo anticipato.
  • Testo e ricerca: estrai il testo della pagina, cerca in avanti o indietro, evidenzia le corrispondenze, crea elenchi di ricerca su tutte le pagine, e ispeziona rettangoli dei caratteri, origini, angoli, caratteri generati, famiglia del font, peso, dimensione, ascendente, discendente e stato del font incorporato.
  • Testo strutturato: GetStructuredText costruisce una gerarchia di pagina, blocco, riga e span con stile a partire dalla geometria dei caratteri, dai metadati dei font, dall’identità degli oggetti di testo e dalla semantica Tagged PDF, con ordinamento di ripiego basato sul layout fisico quando il documento non porta tag.
  • Estrazione di tabelle: ExtractTables ed ExtractDocumentTables combinano i riquadri delle parole con i filetti vettoriali trasformati per riconoscere sia le tabelle con bordi sia quelle allineate dagli spazi, preservano le celle unite, assegnano un punteggio di confidenza, segnalano le continuazioni di pagina ed esportano in CSV o JSON.
  • Reflow semantico in HTML: BuildReflowDocument trasforma un PDF a layout fisso in un albero di nodi riutilizzabile il cui output HTML sicuro conserva titoli, paragrafi, elenchi, figure, sezioni di pagina e celle unite, per visualizzazione responsive, accessibilità e riuso dei contenuti.
  • Moduli: lavora con campi AcroForm, rilevamento dello stato XFA, disponibilità dell'helper V8/XFA opzionale, testo del modulo selezionato, annulla/ripristina dei moduli, aspetti dei moduli generati, flag di campo e appiattimento.
  • Scambio di dati dei moduli: esporta e importa sia XFDF (ISO 19444-1) sia FDF (ISO 32000-1 §12.7.11) per i valori dei campi e 18 sottotipi di annotazione, formati per i quali PDFium non espone alcuna API e che qui sono implementati in Pascal sul modello di annotazioni e campi proprio del componente.
  • Integrazione OCR: collega qualsiasi motore di riconoscimento a IPdfOcrProvider, ricevi le bitmap di pagina in un formato di pixel definito, restituisci i quadrilateri delle parole e lascia che il componente scriva il livello di testo ricercabile, con segnalazione dello stato per pagina e salto delle pagine che hanno già testo.
  • Annotazioni e link: crea, elimina, conta e ispeziona annotazioni; gestisci link di pagina, link web, destinazioni dei segnalibri, azioni JavaScript del documento, superfici di rischio URI/Launch e eventi click del visualizzatore.
  • Assemblaggio documenti: crea documenti, aggiungi o elimina pagine, importa intervalli di pagine per etichetta o indice fisico, sposta pagine, componi pagine N-up, riutilizza pagine come Form XObject, applica filigrane o timbri, aggiorna il contenuto delle pagine e gestisci i box delle pagine.
  • Output PDF e revisioni: salva file Fast Web View linearizzati con hint table degli offset di pagina e degli oggetti condivisi, impacchetta gli oggetti in object stream con copertura xref di tipo 2 completa, aggiungi revisioni incrementali per oggetti modificati che preservano l’output precedente byte per byte, e produci copie di riparazione riverificate da un caricamento strict indipendente prima della consegna.
  • Firme digitali: firma ai livelli PAdES baseline B-B, B-T, B-LT o B-LTA; costruisci SignedData CMS / CAdES con gli attributi firmati richiesti dal profilo; richiedi token RFC 3161 a una TSA; raccogli la catena di certificati in un Document Security Store; aggiungi marche temporali di archivio; e valida qualsiasi documento rispetto a controlli PAdES a livello di clausola e alla fiducia della catena di certificati, in modo sincrono o asincrono.
  • Firma remota e con HSM: dividi l’operazione in due con PreparePadesRemoteSignature e CompletePadesRemoteSignature: l’applicazione produce un documento con segnaposto e una richiesta di firma portabile che contiene il digest SHA-256, un servizio remoto o un modulo hardware restituisce il CMS separato e il componente lo inietta. La chiave privata non deve mai raggiungere la postazione di lavoro.
  • Cifratura e integrità: scrivi cifratura PDF 2.0 AES-256 con corretta derivazione della chiave R6 e blocchi di permessi, usa AES-GCM ISO/TS 32003 dove richiesto, allega token PDF MAC ISO/TS 32004 e affidati a primitive AES, SHA-2, SHA-3, HMAC e ASN.1 scritte in Object Pascal, senza alcuna dipendenza C esterna.
  • Ispezione di contenuti e sicurezza: estrai immagini, esegui il rendering di bitmap di oggetti, ispeziona i bound degli oggetti e la trasparenza, leggi allegati, metadati, firme, autorizzazioni, lingua, etichette delle pagine, modalità di pagina, preferenze del visualizzatore, struttura Tagged PDF e identificatori di file. TPdfStreamInspector decodifica oggetti stream arbitrari sotto budget espliciti di origine, dati grezzi, dati decodificati, rapporto di espansione e numero di stream, così che una bomba di decompressione restituisca uno stato strutturato invece di esaurire la memoria.
  • Lettura accessibile: costruisci unità di lettura a livello di frase, mappa il testo pronunciato sul contenuto PDF, guida le evidenziazioni di lettura parola per parola, naviga tra i campi dei moduli, ispeziona la struttura con tag e applica trasformazioni bitmap per ipovisione nei workflow di lettura assistita.
  • Report preflight: genera report di audit orientati agli standard con campi pass, action-required, review, priorità, categoria del problema, conteggio per categoria e azione successiva; esporta in TXT, HTML e Markdown leggibili da persone oppure in JSON, CSV, SARIF 2.1.0, JUnit XML e NDJSON leggibili da macchine; produci impronte SHA-256 dei report stabili; esegui riepiloghi batch; allega report alle copie di revisione; e vincola una build al codice di uscita dell’eseguibile da riga di comando.
  • Stampa: stampa con intervalli di pagine, numero di copie, preferenze di scala, composizione N-up, filtro dispari/pari, output in scala di grigi, metadati delle preferenze del visualizzatore e SetPdfPrintPaperHandlingDevMode per l'integrazione fronte/retro e la gestione della carta.

Workflow PDF conformi agli standard

PDFium Delphi Component espone API di validazione e salvataggio orientate agli standard per i team che necessitano di consegna PDF prevedibile, revisione archivistica, workflow di stampa, verifiche di accessibilità, documenti tecnici, output con dati variabili o consegna bloccata su raster.

WorkflowSupporto PDFium Delphi ComponentResponsabilità dell'applicazione
PDF/AValidatePdfA, SaveAsPdfA e PdfAConformance per le parti da 1 a 4 di ISO 19005, compresi i profili A-4, A-4f e A-4e basati su PDF 2.0, con verifiche OutputIntent, verifiche dei metadati XMP, verifiche di incorporamento dei font, verifiche di struttura RoleMap e ParentTree, limiti di implementazione dell’allegato C, restrizioni su cifratura e JavaScript, e helper di salvataggio consapevoli del profilo.Scegli il target di archiviazione, fornisci metadati e dati colore corretti del documento, e rivedi eventuali problemi di validazione segnalati prima della consegna.
PDF/XValidatePdfX, SaveAsPdfX e PdfXConformance da X-1a fino a X-6 basato su PDF 2.0, con gestione di OutputIntent e ICC, restrizioni su trasparenza e spazi colore vincolate al profilo, verifiche di geometria TrimBox / ArtBox / BleedBox e verifiche del profilo adatto alla stampa.Fornisci dati di output intent appropriati per la produzione, geometria della pagina e impostazioni di stampa per il profilo PDF/X di destinazione.
PDF/UAValidatePdfUa, SaveAsPdfUa, PdfUaConformance, verifiche di lingua e tagging, ispezione dell'albero delle strutture, revisione del marked content e validazione del profilo di accessibilità.Crea un ordine di lettura significativo, intestazioni, elenchi, semantica delle tabelle, testo alternativo e lingua del documento nel workflow sorgente.
PDF/E, PDF/VT, PDF/RValidatePdfE, ValidatePdfVT, ValidatePdfR, API SaveAs... corrispondenti e proprietà di conformità per i profili PDF tecnici, con dati variabili e orientati al raster. PDF/VT copre le gerarchie DPart, i metadati delle parti di documento e l’impacchettamento in stream MIME multipart di VT-2s; PDF/E inietta un output intent sRGB incorporato; PDF/R impone una sola immagine a striscia per pagina e l’elenco delle codifiche consentite.Abbina il profilo al workflow aziendale e mantieni il contenuto sorgente all'interno del set di funzionalità consentite dallo standard selezionato.
Firme PAdESSignPades, SignPadesToStream, SignPadesBytes, SaveAsPadesDss e ValidatePadesCompliance coprono i livelli baseline B-B, B-T, B-LT e B-LTA di ETSI EN 319 142-1, con marcatura temporale RFC 3161, iniezione nel Document Security Store, marcatori di estensione ESIC e 26 codici di validazione a livello di clausola. SignPadesWithPdfA combina conversione per archiviazione e firma in un unico workflow.Fornire il certificato di firma e la sua catena, scegliere un endpoint TSA per i livelli con marca temporale, e definire la politica di conservazione e revoca della propria organizzazione.
Automazione preflightFPdfPreflightReport e PreflightReportCli aggregano i risultati di PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R e PDF/VT in TXT, HTML e Markdown leggibili da persone oppure in JSON, CSV, SARIF 2.1.0, JUnit XML e NDJSON leggibili da macchine, con ordinamento deterministico e impronte SHA-256 stabili.Decidi se i risultati pass, action-required, review o i conteggi dei problemi devono bloccare CI, consegna o ingestione nell'archivio.

Queste API sono progettate per rendere il lavoro sugli standard visibile nel codice. I risultati di validazione, i riepiloghi preflight e gli helper di salvataggio aiutano la tua applicazione a rifiutare o correggere output problematici invece di inviare silenziosamente un file che fallisce solo in seguito in un archivio, pipeline di stampa o accessibilità. I validatori integrati si concentrano su verifiche a livello di marcatori e su verifiche selettive a livello di file; i team che richiedono una certificazione formale a livello di contenuto dovrebbero affiancarli con il proprio motore di validazione dedicato.

Architettura dei componenti

  • TPdf: componente documento non visivo per caricamento, accesso in streaming, salvataggio, rendering, ricerca, estrazione, validazione, accesso ai moduli, operazioni sulle pagine, metadati, allegati, annotazioni, report preflight e workflow del profilo PDF.
  • TPdfView: componente visualizzatore visivo per modalità di visualizzazione, interazione utente, link, scorrimento, zoom, selezione, messa a fuoco dei moduli, evidenziazione, navigazione delle pagine e workflow degli appunti.
  • TPdfThumbnailView: pannello laterale di miniature scorrevoli per la navigazione delle pagine, tracciamento della pagina corrente, feedback al passaggio del mouse e layout companion del visualizzatore.
  • Unità helper: 55 unità Object Pascal in totale. Oltre al binding con il motore si raggruppano in crittografia (FPdfAes, FPdfAesGcm, FPdfSha256, FPdfSha512, FPdfSha3, FPdfHmac, FPdfAsn1), firma (FPdfPades, FPdfCms, FPdfTsa, FPdfCryptoWin), standard (FPdfPdfa, FPdfPdfx, FPdfPdfua, FPdfPdfe, FPdfPdfvt, FPdfPdfr, FPdfPreflightReport), serializzazione e integrità (FPdfCompress, FPdfEncrypt, FPdfMac, FPdfStreamInspect, FPdfContentNormalize) e servizi sui contenuti (FPdfXfdf, FPdfXmp, FPdfLayout, FPdfMeasure, FPdfTextShaping, FPdfStructTree, FPdfAsync, FPdfMatrix).

Ogni unità elencata sopra è sorgente che ricevi e in cui puoi entrare passo passo con il debugger. Le primitive crittografiche sono in Object Pascal, verificate con i vettori di test pubblicati FIPS 197 e FIPS 180-4: firma e cifratura non aggiungono quindi alcuna libreria C esterna al tuo deployment né alcun binario di terze parti alla tua revisione di sicurezza.

Scarica il pacchetto demo di PDFium Delphi Component

2026-08-16 Versione 3.51.0: PDFium Delphi Component note di rilascio | riferimento API. La versione 3.51.0 rende pubblici, come già documentato, otto membri di TPdf finora irraggiungibili, e completa il riferimento in inglese affinché ogni membro pubblico di TPdf e di TPdfView abbia una pagina propria (88 membri ne hanno guadagnata una), insieme alle enumerazioni e ai record raggiungibili dalle firme pubbliche.

Licenze e prezzi

Pagamento con carta di credito/debito, PayPal, AliPay o bonifico tramite 2Checkout. Ogni nuova licenza PDFium Delphi Component include il codice sorgente Object Pascal, un anno di aggiornamenti e un anno di supporto email.

LicenzaSviluppatoriPrezzoOrdina
Single1 sviluppatore$350Ordina
Small Businessfino a 10 sviluppatori$700Ordina
Medium Businessfino a 30 sviluppatori$1050Ordina
EnterpriseTutti gli sviluppatori di un’azienda e delle sue controllate in un solo paese$2100Ordina
CorporateTutti gli sviluppatori di un’azienda e delle sue controllate in tutto il mondo$4200Ordina

Extra sorgente per Enterprise e Corporate: PDFium Delphi Component Enterprise e Corporate includono entrambi il codice sorgente completo dell’esempio di livello strumento dedicato PDF Intake & Accessibility Review Workbench Pro. Il codice sorgente delle suite di test complete normalmente usate solo per la validazione interna è disponibile su richiesta.

Rinnovo per clienti esistenti: 40% del prezzo pieno, annullabile in qualsiasi momento. Apri la pagina di acquisto e rinnovo di PDFium Delphi Component.

Applicazioni di lettura professionali di riferimento

Il pacchetto va oltre gli esempi API isolati. I progetti di lettura pronti da eseguire mostrano come i componenti lavorano insieme in flussi applicativi completi, offrendo ai team basi collaudate per UI di produzione, interazione, prestazioni, revisione e accessibilità.

  • PDFViewer: base completa per lettori con selezione del testo, ricerca, segnalibri, navigazione delle pagine, stampa, collegamenti, modalità di visualizzazione, miniature e collegamenti di eventi necessari a un vero visualizzatore desktop.
  • ViewerInteractionLab e SearchAndSelect: schemi di interazione riutilizzabili per modalità di adattamento, colori delle pagine, rotazione, evidenziazione della ricerca, elenchi di risultati su tutte le pagine, anteprima del testo selezionato, appunti e mappatura delle coordinate.
  • MultiPageViewer: comportamento continuo, a pagine affiancate, sensibile alla copertina e multipagina per applicazioni di revisione documentale che richiedono più di una pagina renderizzata.
  • SplitView: due visualizzazioni sincronizzate di un documento per workflow di confronto e revisione.
  • AccessibilityReader e AccessibilityLab: sessioni di lettura ad alta voce, integrazione con il motore vocale dell'host, unità di lettura a livello di frase, evidenziazioni parola per parola, navigazione dei moduli, ispezione della struttura con tag e modalità per ipovisione.
  • ContentExtractionLab: un workflow per metadati, testo, oggetti di pagina, immagini, allegati, collegamenti, annotazioni, segnalibri, font e metriche dei caratteri con esportazione TXT / JSON.
  • PDFtoJpg, BatchExport e ImageToPDF: esportazione raster, conversione in batch di più file, caricamento in streaming, controlli DPI e qualità, inserimento password, avanzamento e annullamento cooperativo.
  • MergePDF, SplitPDF, CreatePDF e WatermarkStamp: assemblaggio documenti, creazione programmatica di PDF, filigrane riutilizzabili come Form XObject, timbri agli angoli ed etichette dei numeri di pagina.
  • SecurityAudit: ispezione in sola lettura per autorizzazioni, allegati, JavaScript, link URI/Launch, link web, firme, stato XFA, disponibilità dell'helper runtime e report di audit TXT/JSON.
  • XfdfLab e XfaLab: andata e ritorno di dati dei moduli e annotazioni tramite XFDF e FDF, e prova del rilevamento dello stato XFA con il runtime opzionale compatibile con V8 / XFA.
  • CJKTextLab e RTLTextLab: gestione di testo cinese, giapponese, coreano, arabo ed ebraico: estrazione, ricerca, geometria della selezione e comportamento dello shaping su scritture in cui le ipotesi ingenue sull’ordine dei caratteri non reggono.
  • AnnotationsLab e NavigationLab: creazione e modifica di annotazioni di marcatura con geometria a quadripunti, e schemi di navigazione tramite segnalibri, destinazioni, azioni con nome ed etichette di pagina.
  • AccessibilityWorkbenchCli e IntakeWorkbenchCli: pipeline di revisione e acquisizione senza interfaccia grafica per la valutazione di accessibilità in batch e l’ingresso dei documenti, adatte a processi pianificati e alla CI più che a una finestra desktop.
  • StandardsLab, PreflightReport e PreflightReportCli: workflow di validazione e salvataggio PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R e PDF/VT, anteprime dei report, esportazione TXT/HTML/Markdown/JSON/CSV, cartelle batch, riepiloghi ordinati, nomi di report sicuri per i duplicati, allegato dei report e comportamento di uscita CI-oriented con failon=.

Perché i team scelgono PDFium Delphi Component

  • Firma e cifratura senza un secondo fornitore: PAdES da B-B fino a B-LTA, marcatura temporale RFC 3161 e cifratura PDF 2.0 AES-256 fanno parte di questa libreria. La maggior parte dei team Delphi arriva a questo punto aggiungendo un SDK di firma separato o un deployment di OpenSSL; qui è un solo pacchetto, una sola licenza e sorgente Pascal che puoi verificare.
  • Lavoro sugli standard visibile nel codice: sei famiglie di standard ISO hanno validatori veri con codici di risultato a livello di clausola, non una casella di spunta. L’output di preflight in TXT, HTML, Markdown, JSON e CSV si inserisce direttamente nella CI, e l’eseguibile da riga di comando restituisce un codice di uscita di errore sulle condizioni che scegli tu.
  • Uno scrittore PDF che il motore non ha: Fast Web View linearizzato, impacchettamento in object stream e revisioni incrementali per oggetti modificati che preservano il file precedente byte per byte: i formati di output che i sistemi di archiviazione, la distribuzione web e le piste di audit chiedono davvero.
  • Un livello applicativo, non solo funzioni importate: componenti Delphi di alto livello coprono stato dei documenti, interazione del lettore, rendering, testo, moduli, annotazioni, stampa, accessibilità, validazione e codice per workflow ripetibili.
  • Lettori professionali da studiare ed estendere: progetti completi per visualizzatore, più pagine, vista divisa, interazione, ricerca e lettura accessibile accorciano il percorso dalla prima valutazione a un lettore specifico per il prodotto.
  • Prestazioni progettate per documenti reali: caricamento su richiesta con accesso ricercabile, percorsi di rendering DIB diretti, rendering progressivo annullabile e schemi di visualizzatore reattivi supportano PDF grandi e complessi.
  • Accessibilità oltre una casella di spunta: sessioni e unità di lettura, mappatura dal parlato alla pagina, evidenziazioni parola per parola, trasformazioni per ipovisione, accesso ai moduli e ispezione della struttura con tag favoriscono esperienze di lettura assistita.
  • Qualità di rendering PDFium: usa la famiglia di motori open source alla base della visualizzazione PDF di Chromium, mantenendo livello applicativo e sorgente nel tuo codebase Delphi.
  • Input ostile trattato come ostile: la decodifica degli stream, la normalizzazione dei contenuti e la scansione della struttura girano tutte sotto budget espliciti di origine, output, token, annidamento e rapporto di espansione, così che un PDF malformato o creato ad arte restituisca uno stato strutturato invece di far cadere il processo.
  • Nessuna royalty runtime: crea applicazioni desktop senza tariffe runtime per documento o per utente finale.
  • Supporto IDE moderno: Delphi XE5 fino a Delphi 13.1 Florence, C++Builder XE5 fino a C++Builder 13.1 Florence e workflow Lazarus/Free Pascal, con build Win32 e Win64.
  • Copertura di test aggiornata: i test DUnitX per Delphi, GoogleTest per C++Builder e FPCUnit per Lazarus coprono i principali workflow di documento, rendering, moduli, struttura, stampa, miniature e visualizzatore.

Documentazione online di PDFium Delphi Component

Esempio di codice

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;          // firma + token TSA + DSS + marca temporale di archivio
  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;

Casi d'uso tipici

  • Sistemi di gestione documentale con visualizzazione PDF incorporata, ricerca, stampa e workflow dei moduli.
  • Applicazioni di contabilità e fatturazione che necessitano di revisione PDF, estrazione, gestione allegati, verifiche dell'output pronto per l'archivio, manifesti preflight batch e allegati di report.
  • Software desktop legale, tecnico, medico e governativo dove gli utenti devono ispezionare, stampare, validare, produrre report e preservare documenti PDF senza uscire dall'applicazione.
  • Workflow di documenti firmati in settori regolamentati: contratti, fatture, bolle di consegna e registrazioni che devono portare una firma PAdES B-T o B-LTA con una marca temporale attendibile e restare verificabili per anni.
  • Distribuzione riservata che richiede cifratura PDF 2.0 AES-256 con permessi definiti, scritta dall’applicazione stessa e non da uno strumento esterno in un secondo passaggio.
  • Strumenti di conformità e ingestione che necessitano di verifiche ripetibili dei marcatori PDF/A, PDF/X, PDF/UA, PDF/E, PDF/R o PDF/VT prima di instradare i file verso validatori esterni o sistemi di archivio.
  • Visualizzatori di report e strumenti aziendali interni che necessitano di visualizzazione PDF rapida, rasterizzazione delle pagine, testo copiabile e stampa controllata.

Quando scegliere questo prodotto

  • Scegli PDFium Delphi Component quando l’applicazione deve visualizzare, verificare, firmare, cifrare e consegnare documenti PDF: basi per lettori professionali, firma PAdES, cifratura PDF 2.0, sei validatori di standard, output linearizzato e incrementale, prestazioni sui file grandi, accessibilità, moduli e stampa, il tutto da un unico pacchetto con il sorgente.
  • Scegli HotPDF Component quando la tua applicazione genera documenti e preferisci non ridistribuire alcun motore di rendering: HotPDF porta con sé il proprio renderer, i codec di immagine, il motore dei font, la generazione di codici a barre, l’impaginazione XFA e la validazione Factur-X, e si compila direttamente nel tuo eseguibile.
  • Scegli PDF Library for Delphi quando un unico toolkit deve coprire l’intero ciclo di vita, oppure quando servono OCR, lettura di codici a barre, firma con token hardware PKCS#11, validazione con le liste di fiducia dell’UE, o accesso via DLL / ActiveX / Dylib per chiamanti non Delphi.

Vuoi confrontare tutta la famiglia? Consulta la panoramica delle librerie PDF per sviluppatori per un confronto affiancato di PDFium Delphi Component, losLab PDF Library e HotPDF Component.

Domande frequenti

PDFium Delphi Component è un wrapper sottile della DLL PDFium?

No. PDFium esegue il rendering e la lettura; non può firmare un documento, scrivere cifratura, validare uno standard PDF né emettere revisioni linearizzate, in object stream o incrementali. Oltre 62.000 delle circa 115.000 righe di Object Pascal del pacchetto si trovano in unità prive di corrispettivo nell’API di PDFium e implementano esattamente quei livelli: firma PAdES da B-B fino a B-LTA, uno stack crittografico AES / SHA / ASN.1 in Pascal puro, cifratura PDF 2.0 AES-256, sei validatori di standard ISO, un serializzatore PDF proprietario, XFDF, XMP e l’architettura di visualizzatore, lettore e accessibilità.

Quale motore usa PDFium Delphi Component?

PDFium Delphi Component usa PDFium, la stessa famiglia di motori open source alla base della visualizzazione PDF di Chromium, come fondamento di rendering. losLab costruisce intorno a quel motore il modello di componenti nativo per Delphi, i workflow applicativi, l'architettura del lettore, il livello di accessibilità, gli esempi, i test e il supporto.

PDFium Delphi Component può firmare digitalmente i documenti PDF?

Sì. Implementa i profili PAdES baseline B-B, B-T, B-LT e B-LTA di ETSI EN 319 142-1: costruzione di SignedData CMS / CAdES conforme a RFC 5652, richieste di marca temporale RFC 3161 a una TSA, raccolta della catena di certificati in un Document Security Store e marche temporali di archivio. Le chiavi di firma sono usate tramite il backend Windows CNG con RSA-PSS, PKCS#1 o ECDSA. PDFium da solo può soltanto leggere i dizionari di firma esistenti.

Può cifrare i documenti PDF?

Sì. SaveAsEncrypted scrive cifratura AES-256 secondo ISO 32000-2, compresa la derivazione R6 dell’hash della password dell’algoritmo 2.B, le voci di dizionario /O /U /OE /UE /Perms e la cifratura completa di stream e stringhe. Sono supportati AES-GCM ISO/TS 32003 e i token PDF MAC ISO/TS 32004. Le primitive AES, SHA-256/384/512, HMAC e ASN.1 sono Object Pascal puro, senza dipendenze C esterne.

PDFium Delphi Component supporta Lazarus e Free Pascal?

Sì. Il pacchetto include file di pacchetto Lazarus / Free Pascal e demo LCL accanto ai componenti VCL per Delphi e C++Builder, coprendo Delphi e C++Builder da XE5 a 13.1 Florence con target Win32 e Win64.

Quanto rapidamente apre PDF molto grandi?

Il visualizzatore usa accesso PDFium ricercabile su richiesta invece di un caricamento completo iniziale. Nei test reali, PDF da 2.x GB che fanno attendere i lettori PDF comuni per 20-30 secondi prima della prima vista diventano quasi subito utilizzabili in PDFium Delphi Component.

PDFium Delphi Component può creare o modificare documenti PDF?

Copre l'assemblaggio dei documenti: creazione, aggiunta ed eliminazione di pagine, importazione di intervalli, spostamento di pagine, composizione N-up, filigrane, timbri e aggiornamenti del contenuto delle pagine. Per l'authoring PDF programmatico intenso, HotPDF Component o losLab PDF Library sono più adatti.

Gestisce moduli AcroForm e XFA?

Sì. Gestisce campi AcroForm, focus dei moduli e testo selezionato, annulla e ripeti, aspetti generati, flag dei campi e appiattimento, rileva lo stato XFA e può usare DLL runtime opzionali compatibili con V8 / XFA quando servono tali funzioni.

Quali standard PDF può validare?

Sei famiglie di standard, ciascuna con il proprio validatore e il corrispondente helper di salvataggio o di iniezione dei marcatori: PDF/A (ISO 19005 parti da 1 a 4, compresi gli A-4 base/f/e basati su PDF 2.0), PDF/X (ISO 15930, compreso X-6), PDF/UA (ISO 14289-1), PDF/E (ISO 24517-1), PDF/VT (ISO 16612-2, compreso l’impacchettamento in stream MIME di VT-2s) e PDF/R (ISO 23504-1). La struttura PAdES baseline è validata separatamente rispetto a ETSI EN 319 142-1. I report preflight si esportano in TXT, HTML, Markdown, JSON, CSV, SARIF 2.1.0, JUnit XML e NDJSON. I validatori coprono il livello dei marcatori e un insieme crescente di clausole a livello di file; abbinali a un motore di validazione dedicato quando serve una certificazione formale.

Sono previste royalty runtime o tariffe per utente?

No. Le applicazioni con licenza sono distribuibili senza royalty e senza costi runtime per documento o utente finale.

Cosa include una licenza e come funziona il rinnovo?

Una nuova licenza include il sorgente Object Pascal, un anno di aggiornamenti e un anno di supporto email. I clienti esistenti rinnovano l'accesso agli aggiornamenti al 40% del prezzo pieno.


Scopri di più sullo sviluppo con componenti PDF e fogli di calcolo Delphi

Iscriviti agli aggiornamenti del prodotto

Iscriviti per ricevere gli ultimi aggiornamenti nella tua email.