SDK PDFium avec code source

PDFium Delphi Component pour Delphi, C++Builder et Lazarus

Intégrez des workflows PDFium VCL Component dans vos applications Delphi et C++Builder, ou des workflows PDFium LCL Component dans Lazarus/FPC, avec des composants en code source pour la visualisation, le rendu, les formulaires, l'impression, les rapports de preflight et la validation orientée standards.

PDFium Delphi Component visionneuse PDF Delphi

Bien plus qu’une liaison PDFium

PDFium Delphi Component est une couche complète de développement d’applications PDF natives construite sur PDFium, et non une simple traduction de l’API C de PDFium. Elle associe des composants Delphi à des flux réutilisables d’affichage, rendu, recherche, formulaires, annotations, impression, accessibilité et rapports de preflight.

Applications de référence pour lecteurs professionnels

Les projets exécutables PDFViewer, MultiPageViewer, SplitView, interaction, recherche et lecture accessible montrent des flux complets d’applications de bureau. Ils offrent une base éprouvée pour l’interface de production, la révision, les performances et les fonctions d’assistance.

PDFium Delphi Component En bref

ProduitPDFium Delphi Component — SDK applicatif PDF professionnel livré avec le code source, pour Delphi, C++Builder et Lazarus
Idéal pourLivrer des lecteurs PDF performants, des outils de révision, des workflows documentaires et des expériences de lecture accessibles dans des applications natives
Prise en charge des IDEDelphi et C++Builder XE5 à 13.1 Florence (Win32, Win64) ; Lazarus / Free Pascal LCL
Rôle du moteurPDFium — la famille de moteurs open source à l’origine de l’affichage PDF de Chromium — assure le rendu des pages et la lecture des documents ; DLL d’exécution V8 / XFA en option
Couche applicative115 000 lignes d’Object Pascal réparties en 55 unités, 475 membres publics de TPdf et 152 sur TPdfView, dont les couches visionneuse, sérialisation, signature, chiffrement, standards et accessibilité que PDFium ne fournit pas
Signatures numériquesSignature PAdES B-B / B-T / B-LT / B-LTA (ETSI EN 319 142-1), conteneurs CMS / CAdES, horodatage RFC 3161, Document Security Store
ChiffrementÉcriture du chiffrement PDF 2.0 AES-256 (ISO 32000-2), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC, sur une pile AES / SHA / HMAC / ASN.1 entièrement en Pascal
StandardsValidateurs PDF/A (parties 1-4), PDF/X (jusqu’à X-6), PDF/UA, PDF/E, PDF/VT (jusqu’à VT-2s) et PDF/R, avec aides à l’enregistrement et à l’injection de marqueurs
Sortie PDFSérialiseur maison : Fast Web View linéarisé, regroupement en flux d’objets et flux xref, révisions incrémentales limitées aux objets modifiés, copies de réparation vérifiées
Ressources pour lecteurs34 projets prêts à exécuter : références de lecteurs professionnels, laboratoires d’interaction, ateliers d’accessibilité, outils de standards et de preflight, laboratoires de texte CJC et RTL
Fichiers volumineuxL’accès à la demande évite une copie intégrale en mémoire pour les documents de plusieurs gigaoctets ; rendu de pages en parallèle et espace de travail borné
Code sourceCode source Object Pascal complet inclus avec chaque licence
LicenceSans redevance, paiement unique de $350-$4200 selon le palier ; renouvellement à 40 % du prix catalogue
Version actuelle3.51.0 (2026-08-16)
ÉvaluationTéléchargement gratuit du pack de démonstration

Là où le moteur s’arrête et où le produit commence

PDFium est un moteur de rendu. Il dessine les pages, extrait le texte et lit les structures existantes — et c’est tout. Il n’offre ni signature, ni écriture du chiffrement, ni validateur de standards, ni linéarisation, ni écriture de révisions incrémentales, ni prise en charge de XFDF ou XMP. Une liaison de l’API C de PDFium hérite exactement de ces limites.

PDFium Delphi Component livre environ 115 000 lignes d’Object Pascal réparties sur 55 unités. Plus de 62 000 de ces lignes se trouvent dans 36 unités qui n’ont aucun équivalent dans l’API PDFium — cryptographie, signatures, chiffrement, les six validateurs de standards, le sérialiseur PDF, XFDF, XMP, la mise en page et le façonnage du texte. Écrites en Pascal, contrôlées au regard des clauses publiées ISO, ETSI, IETF et FIPS, et livrées sous forme de code source avec chaque licence.

CapacitéMoteur PDFiumImplémenté par PDFium Delphi Component
Signatures numériquesLit uniquement les dictionnaires de signature existantsSignature PAdES B-B / B-T / B-LT / B-LTA, SignedData CMS / CAdES conforme à RFC 5652, client d’horodatage RFC 3161, injection DSS et VRI, clés Windows CNG (RSA-PSS, PKCS#1, ECDSA), signature à distance / HSM où la clé privée ne quitte jamais le service, et validation de la confiance de la chaîne de certificats
ChiffrementOuvre les fichiers chiffrés ; ne sait pas écrire le chiffrementAES-256 selon ISO 32000-2 (dérivation de clé V5 / R6, algorithme 2.B), AES-GCM ISO/TS 32003, PDF MAC ISO/TS 32004, chiffrement complet des flux et des chaînes
Primitives cryptographiquesAucune exposéeAES-128/256 CBC et GCM, SHA-256/384/512, SHA-3, HMAC, lecteur et écrivain ASN.1 DER, en pur Object Pascal, vérifiés au regard des vecteurs de test FIPS 197 et FIPS 180-4
Conformité aux standardsAucun validateur d’aucune sortePDF/A parties 1 à 4, PDF/X jusqu’à X-6, PDF/UA-1, PDF/E-1, PDF/VT-1/2/2s, PDF/R-1 — validateurs au niveau des clauses, injection de marqueurs et assistants de sauvegarde tenant compte du profil
Sérialisation PDFUne seule sauvegarde séquentielle du fichier entierFast Web View linéarisé avec tables de hints de l’annexe F, compactage en flux d’objets et flux de xref, révisions incrémentales par objets modifiés avec préservation du préfixe à l’octet près, et copies de réparation revérifiées en mode strict
Documents endommagésRécupération silencieuse, sans rapportPolitiques de chargement strict, compatible et récupération, avec diagnostics structurés : chemin de reconstruction, décalages de corruption, révisions en conflit et état des budgets
Échange de données de formulaireAucune API XFDF ni FDFImport et export XFDF (ISO 19444-1) et FDF pour les valeurs de champs et 18 sous-types d’annotation
MétadonnéesLit le dictionnaire info classiqueLecteur et écrivain de paquets XMP avec conteneurs typés, utilisés par chaque profil de standard
Réseau et montée en chargeRappels par plages d’octets, et rien au-dessusSessions de document progressives, ordonnanceur de plages d’octets priorisé avec déduplication, fusion, nouvelles tentatives bornées et annulation, rendu de pages en parallèle, et stockage de travail borné qui déborde vers un fichier temporaire supprimé à la fermeture
Couche applicativeHandles et rappels CTrois composants VCL / LCL enregistrés, 475 membres publics de TPdf et 152 sur TPdfView, état de la visionneuse, vignettes, sessions de lecture et 34 projets prêts à l’emploi

Au lieu de concevoir de A à Z l’état de la visionneuse, l’interaction, le rendu asynchrone, la mise en correspondance du texte, le focus des formulaires, la navigation entre pages, le comportement d’accessibilité, les conteneurs de signature, les dictionnaires de chiffrement et les écrivains de révisions, les équipes partent de composants éprouvés et d’architectures de lecteurs fonctionnelles, puis adaptent à leur produit le code source Object Pascal fourni.

Visualisation PDF native et workflows documentaires pour Delphi

PDFium Delphi Component est un ensemble de composants PDFium avec code source pour Delphi, C++Builder et Lazarus, destiné aux applications qui nécessitent un affichage PDF rapide, la rastérisation de pages, le chargement en streaming, la sélection de texte, la recherche, les formulaires, les annotations, l'impression, les rapports de preflight et l'inspection de documents dans une interface Windows native.

Ouverture quasi instantanée des grands PDF : lors de tests réels sur de gros fichiers, des PDF de 2.x Go qui font attendre 20 à 30 secondes les lecteurs PDF courants avant le premier affichage peuvent devenir utilisables presque immédiatement dans PDFium Delphi Component.

Utilisez-le lorsque l'expérience PDF doit être intégrée à votre application plutôt que confiée à un visualiseur externe. Le package inclut des composants visuels et non visuels, le code source Object Pascal, des projets de démos, les DLL PDFium, des DLL optionnelles V8 / XFA, des exemples de preflight en ligne de commande, des tests de régression et une documentation pour l'intégration de visionneuse comme pour les opérations PDF de bas niveau.

Le PDFium VCL Component prend en charge Delphi XE5 à Delphi 13.1 Florence et C++Builder XE5 à C++Builder 13.1 Florence, avec cibles Win32 et Win64. Le PDFium LCL Component inclut des fichiers de paquets Lazarus / Free Pascal et des démos pour les workflows LCL.

Fonctions principales

  • API applicatives de haut niveau : travaillez avec des objets document et visionneuse natifs Delphi au lieu de câbler des handles PDFium bruts dans chaque écran, chaque tâche de fond, chaque workflow de formulaire et chaque chemin de libération.
  • Interface de visionneuse : déposez TPdfView sur un formulaire pour bénéficier du zoom, de la rotation, des modes d'ajustement, des mises en page page unique et continue, des spreads tenant compte des couvertures, des ombres de page, des clics de lien sécurisés, de la sélection de texte par l'utilisateur, de la copie dans le presse-papiers et des workflows de focus de formulaire.
  • Navigation par vignettes : ajoutez TPdfThumbnailView à côté de la visionneuse pour des vignettes de pages défilantes avec survol, mise en surbrillance de la sélection et navigation par clic.
  • Rendu : rastérisez les pages et les tuiles en bitmaps, utilisez les écritures DIB zéro-copie lorsque possible, exécutez un rendu progressif annulable, effectuez le rendu d’un ensemble de pages en parallèle via RenderPagesParallel, accédez aux hooks Skia de bas niveau lorsque la DLL chargée les exporte, et maintenez la réactivité sur les grandes pages.
  • Streaming et grands fichiers : chargez depuis le disque, la mémoire, des tableaux d'octets ou des flux seekables personnalisés avec lectures PDFium à la demande, afin que les documents volumineux ou hébergés à distance ne nécessitent pas de copie mémoire préalable.
  • Démarrage sur grands fichiers : commencez à consulter des PDF multi-gigaoctets rapidement ; la visionneuse utilise un accès PDFium seekable et à la demande de sorte que des documents de 2.x Go peuvent devenir utilisables presque immédiatement au lieu d'attendre un chargement complet préalable.
  • Texte et recherche : extrayez le texte des pages, recherchez vers l'avant ou l'arrière, surlignez les correspondances, construisez des listes de recherche toutes pages confondues, et inspectez les rectangles de caractères, les origines, les angles, les caractères générés, la famille de polices, la graisse, la taille, la hauteur du jambage supérieur et inférieur, et l'état de police intégrée.
  • Texte structuré : GetStructuredText construit une hiérarchie de pages, blocs, lignes et spans stylés à partir de la géométrie des caractères, des métadonnées de police, de l’identité des objets texte et de la sémantique Tagged PDF, avec un ordre de repli fondé sur la mise en page physique lorsque le document ne porte aucune balise.
  • Extraction de tableaux : ExtractTables et ExtractDocumentTables combinent les boîtes de mots et les filets vectoriels transformés pour détecter aussi bien les tableaux à bordures que ceux alignés par les blancs, préservent les cellules fusionnées, notent la confiance, marquent les continuations de page et exportent en CSV ou JSON.
  • Refonte sémantique en HTML : BuildReflowDocument transforme un PDF à mise en page fixe en un arbre de nœuds réutilisable dont la sortie HTML sécurisée préserve titres, paragraphes, listes, figures, sections de page et fusions de cellules — pour l’affichage responsive, l’accessibilité et la réutilisation du contenu.
  • Formulaires : travaillez avec les champs AcroForm, la détection d'état XFA, la disponibilité optionnelle des helpers V8 / XFA, le texte de formulaire sélectionné, l'annulation / rétablissement de formulaire, les apparences de formulaire générées, les indicateurs de champs et l'aplatissement.
  • Échange de données de formulaire : exportez et importez aussi bien XFDF (ISO 19444-1) que FDF (ISO 32000-1 §12.7.11) pour les valeurs de champs et 18 sous-types d’annotation — des formats pour lesquels PDFium n’expose aucune API, implémentés en Pascal sur le modèle d’annotations et de champs propre au composant.
  • Intégration OCR : branchez n’importe quel moteur de reconnaissance sur IPdfOcrProvider, recevez les bitmaps de page dans un format de pixels défini, renvoyez les quadrilatères de mots, et laissez le composant écrire la couche de texte recherchable avec rapport d’état par page et saut des pages déjà textuelles.
  • Annotations et liens : créez, supprimez, comptez et inspectez les annotations ; gérez les liens de page, les liens web, les destinations de signet, les actions JavaScript de document, les surfaces de risque URI / Launch et les événements de clic de visionneuse.
  • Assemblage de documents : créez des documents, ajoutez ou supprimez des pages, importez des plages de pages par libellé ou index physique, déplacez des pages, composez des pages N-up, réutilisez des pages comme Form XObjects, appliquez des filigranes ou des tampons, mettez à jour le contenu des pages et gérez les boîtes de page.
  • Sortie PDF et révisions : enregistrez des fichiers Fast Web View linéarisés avec tables de hints d’offsets de page et d’objets partagés, compactez les objets en flux d’objets avec une couverture xref de type 2 complète, ajoutez des révisions incrémentales par objets modifiés qui préservent la sortie précédente octet pour octet, et produisez des copies de réparation revérifiées par un chargement strict indépendant avant livraison.
  • Signatures numériques : signez aux niveaux PAdES baseline B-B, B-T, B-LT ou B-LTA ; construisez un SignedData CMS / CAdES portant les attributs signés qu’exige le profil ; demandez des jetons RFC 3161 à une TSA ; collectez la chaîne de certificats dans un Document Security Store ; ajoutez des horodatages d’archive ; et validez n’importe quel document au regard de contrôles PAdES au niveau des clauses ainsi que de la confiance de la chaîne de certificats, de façon synchrone ou asynchrone.
  • Signature à distance et HSM : scindez l’opération en deux avec PreparePadesRemoteSignature et CompletePadesRemoteSignature — l’application produit un document à emplacement réservé et une requête de signature portable transportant l’empreinte SHA-256, un service distant ou un module matériel renvoie le CMS détaché, et le composant l’injecte. La clé privée n’a jamais besoin d’atteindre le poste de travail.
  • Chiffrement et intégrité : écrivez un chiffrement PDF 2.0 AES-256 avec dérivation de clé R6 correcte et blocs de permissions, utilisez AES-GCM ISO/TS 32003 lorsque c’est requis, attachez des jetons PDF MAC ISO/TS 32004, et appuyez-vous sur des primitives AES, SHA-2, SHA-3, HMAC et ASN.1 écrites en Object Pascal, sans aucune dépendance C externe.
  • Inspection du contenu et de la sécurité : extrayez des images, rastérisez des bitmaps d'objets, inspectez les limites et la transparence des objets, lisez les pièces jointes, les métadonnées, les signatures, les permissions, la langue, les libellés de page, les modes de page, les préférences de visionneuse, la structure Tagged PDF et les identifiants de fichier. TPdfStreamInspector décode des objets de flux arbitraires sous des budgets explicites de source, de données brutes, de données décodées, de ratio d’expansion et de nombre de flux : une bombe de décompression renvoie ainsi un état structuré au lieu d’épuiser la mémoire.
  • Lecture accessible : construisez des unités de lecture au niveau de la phrase, mettez en correspondance le texte prononcé avec le contenu PDF, pilotez les surbrillances de lecture mot à mot, naviguez dans les champs de formulaire, inspectez la structure balisée et appliquez des transformations bitmap pour la basse vision dans les workflows de lecture assistée.
  • Rapports de preflight : générez des rapports d'audit orientés standards avec les champs réussite, action requise, révision, priorité, catégorie d'anomalie, nombre par catégorie et action suivante ; exportez en TXT, HTML et Markdown lisibles par l’humain ou en JSON, CSV, SARIF 2.1.0, JUnit XML et NDJSON lisibles par la machine ; produisez des empreintes SHA-256 de rapport stables ; exécutez des récapitulatifs batch ; joignez des rapports à des copies de révision ; et conditionnez une build au code de sortie de l’exécutable en ligne de commande.
  • Impression : imprimez avec des plages de pages, des copies, des préférences de mise à l'échelle, une composition N-up, un filtrage impair / pair, une sortie en niveaux de gris, des métadonnées de préférences de visionneuse et SetPdfPrintPaperHandlingDevMode pour l'intégration recto verso et de gestion du papier.

Workflows PDF orientés conformité

PDFium Delphi Component expose des API de validation et de sauvegarde orientées standards pour les équipes qui ont besoin d'une remise PDF prévisible, d'une révision d'archivage, de workflows d'impression, de vérifications d'accessibilité, de documents techniques, d'une sortie de données variables ou d'une livraison verrouillée en raster.

WorkflowPrise en charge par PDFium Delphi ComponentResponsabilité de l'application
PDF/AValidatePdfA, SaveAsPdfA, PdfAConformance couvrant les parties 1 à 4 de l’ISO 19005 — y compris les profils A-4, A-4f et A-4e fondés sur PDF 2.0 — avec vérifications OutputIntent, vérifications des métadonnées XMP, vérifications d’intégration des polices, vérifications de structure RoleMap et ParentTree, limites d’implémentation de l’annexe C, restrictions de chiffrement et de JavaScript, et assistants de sauvegarde tenant compte du profil.Choisir la cible d'archivage, fournir les métadonnées de document et les données de couleur correctes, et examiner les problèmes de validation signalés avant la livraison.
PDF/XValidatePdfX, SaveAsPdfX, PdfXConformance de X-1a jusqu’à X-6 fondé sur PDF 2.0, avec gestion OutputIntent et ICC, restrictions de transparence et d’espaces colorimétriques conditionnées par le profil, vérifications de géométrie TrimBox / ArtBox / BleedBox et vérifications de profil sécurisées pour l’impression.Fournir les données d'OutputIntent de production appropriées, la géométrie de page et les paramètres d'impression pour le profil PDF/X cible.
PDF/UAValidatePdfUa, SaveAsPdfUa, PdfUaConformance, vérifications de langue et de balisage, inspection de l'arborescence de structure, révision du contenu marqué et validation du profil d'accessibilité.Rédiger un ordre de lecture, des titres, des listes, une sémantique de tableaux, un texte alternatif et la langue du document pertinents dans le workflow source.
PDF/E, PDF/VT, PDF/RValidatePdfE, ValidatePdfVT, ValidatePdfR, API SaveAs... correspondantes et propriétés de conformité pour les profils PDF d’ingénierie, de données variables et orientés raster. PDF/VT couvre les hiérarchies DPart, les métadonnées de parties de document et l’empaquetage en flux MIME multipartie VT-2s ; PDF/E injecte un output intent sRGB intégré ; PDF/R impose une seule image en bande par page et la liste des encodages autorisés.Adapter le profil au workflow métier et maintenir le contenu source dans l'ensemble de fonctionnalités autorisées par le standard sélectionné.
Signatures PAdESSignPades, SignPadesToStream, SignPadesBytes, SaveAsPadesDss et ValidatePadesCompliance couvrent les niveaux baseline B-B, B-T, B-LT et B-LTA de l’ETSI EN 319 142-1, avec horodatage RFC 3161, injection dans le Document Security Store, marqueurs d’extension ESIC et 26 codes de validation au niveau des clauses. SignPadesWithPdfA combine conversion d’archivage et signature dans un seul workflow.Fournir le certificat de signature et sa chaîne, choisir un point de terminaison TSA pour les niveaux horodatés, et définir la politique de conservation et de révocation de votre organisation.
Automatisation du preflightFPdfPreflightReport et PreflightReportCli agrègent les résultats PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R et PDF/VT en TXT, HTML et Markdown lisibles par l’humain ou en JSON, CSV, SARIF 2.1.0, JUnit XML et NDJSON lisibles par la machine, avec un ordre déterministe et des empreintes SHA-256 stables.Décider si les résultats réussite, action requise, révision ou nombres d'anomalies doivent bloquer le CI, la livraison ou l'ingestion en archive.

Ces API sont conçues pour rendre le travail sur les standards visible dans le code. Les résultats de validation, les récapitulatifs de preflight et les assistants de sauvegarde aident votre application à rejeter ou corriger les sorties problématiques plutôt que de livrer silencieusement un fichier qui ne sera détecté défaillant que plus tard dans un pipeline d'archivage, d'impression ou d'accessibilité. Les validateurs intégrés se concentrent sur les vérifications au niveau des marqueurs et de certains niveaux fichier ; les équipes qui requièrent une certification formelle du contenu doivent les compléter avec leur moteur de validation dédié.

Architecture des composants

  • TPdf : composant de document non visuel pour le chargement, l'accès aux flux, la sauvegarde, le rendu, la recherche, l'extraction, la validation, l'accès aux formulaires, les opérations sur les pages, les métadonnées, les pièces jointes, les annotations, les rapports de preflight et les workflows de profil PDF.
  • TPdfView : composant de visionneuse visuel pour les modes d'affichage, l'interaction utilisateur, les liens, le défilement, le zoom, la sélection, le focus de formulaire, la mise en surbrillance, la navigation entre pages et les workflows du presse-papiers.
  • TPdfThumbnailView : panneau latéral de vignettes défilantes pour la navigation entre pages, le suivi de la page courante, le retour de survol et les mises en page avec visionneuse compagne.
  • Unités d'aide : 55 unités Object Pascal au total. Au-delà de la liaison au moteur, elles se regroupent en cryptographie (FPdfAes, FPdfAesGcm, FPdfSha256, FPdfSha512, FPdfSha3, FPdfHmac, FPdfAsn1), signature (FPdfPades, FPdfCms, FPdfTsa, FPdfCryptoWin), standards (FPdfPdfa, FPdfPdfx, FPdfPdfua, FPdfPdfe, FPdfPdfvt, FPdfPdfr, FPdfPreflightReport), sérialisation et intégrité (FPdfCompress, FPdfEncrypt, FPdfMac, FPdfStreamInspect, FPdfContentNormalize) et services de contenu (FPdfXfdf, FPdfXmp, FPdfLayout, FPdfMeasure, FPdfTextShaping, FPdfStructTree, FPdfAsync, FPdfMatrix).

Chaque unité ci-dessus est du code source que vous recevez et pouvez exécuter pas à pas. Les primitives cryptographiques sont en Object Pascal, vérifiées au regard des vecteurs de test publiés FIPS 197 et FIPS 180-4 : la signature et le chiffrement n’ajoutent donc aucune bibliothèque C externe à votre déploiement, ni aucun binaire tiers à votre revue de sécurité.

Télécharger le package de démonstration PDFium Delphi Component

2026-08-16 Version 3.51.0 : PDFium Delphi Component notes de version | référence API. La version 3.51.0 rend publics, conformément à la documentation, huit membres de TPdf jusque-là inaccessibles, et complète la référence anglaise afin que chaque membre public de TPdf et de TPdfView dispose de sa propre page — 88 membres en ont gagné une — de même que les énumérations et enregistrements accessibles depuis les signatures publiques.

Licences et tarifs

Paiement par carte de crédit/débit, PayPal, AliPay ou virement bancaire via 2Checkout. Chaque nouvelle licence PDFium Delphi Component inclut le code source Object Pascal, un an de mises à jour et un an de support par e-mail.

LicenceDéveloppeursPrixCommander
Single1 développeur$350Commander
Small Businessjusqu'à 10 développeurs$700Commander
Medium Businessjusqu'à 30 développeurs$1050Commander
EnterpriseTous les développeurs d’une entreprise et de ses filiales dans un seul pays$2100Commander
CorporateTous les développeurs d’une entreprise et de ses filiales dans le monde entier$4200Commander

Extras source Enterprise et Corporate : PDFium Delphi Component Enterprise et Corporate incluent tous deux le code source complet de l’exemple dédié de niveau outil PDF Intake & Accessibility Review Workbench Pro. Le code source des suites de tests complètes normalement utilisées uniquement pour la validation interne est disponible sur demande.

Renouvellement client existant : 40 % du prix complet, annulable à tout moment. Ouvrir la page d'achat et de renouvellement PDFium Delphi Component.

Démos incluses

Le package inclut des exemples prêts à l'emploi pour Delphi, C++Builder et Lazarus couvrant les workflows essentiels dont la plupart des équipes ont besoin avant d'intégrer le composant dans un logiciel de production.

  • PdfViewer : visionneuse complète avec sélection de texte, recherche, signets, navigation entre pages, impression, liens et modes d'affichage.
  • ViewerInteractionLab et SearchAndSelect : modes d'affichage, modes d'ajustement, couleurs de page, rotation, mise en surbrillance de la recherche, listes de résultats toutes pages, aperçu du texte sélectionné, copie, effacement et mappage de coordonnées.
  • MultiPageViewer : comportement de visionneuse continue, spread, tenant compte des couvertures et multipage pour les applications de révision de documents.
  • SplitView : deux vues synchronisées d'un même document pour les workflows de comparaison et de révision.
  • ContentExtractionLab : un seul workflow pour les métadonnées, le texte, les objets de page, les images, les pièces jointes, les liens, les annotations, les signets, les polices et les métriques de caractères avec export TXT / JSON.
  • PDFtoJpg, BatchExport et ImageToPDF : export raster, conversion multi-fichiers en lot, chargement en streaming, contrôles DPI / qualité, saisie du mot de passe, progression et annulation coopérative.
  • MergePDF, SplitPDF, CreatePDF et WatermarkStamp : assemblage de documents, création PDF par programmation, filigranes Form XObject réutilisables, tampons d'angle et libellés de numéros de page.
  • FormFill, FontProperties et Attachment : édition et aplatissement de valeurs de formulaire, inspection indexée des polices et des caractères, et extraction ou création de fichiers intégrés.
  • SecurityAudit : inspection en lecture seule des permissions, pièces jointes, JavaScript, liens URI / Launch, liens web, signatures, état XFA, disponibilité des helpers runtime et rapports d'audit TXT / JSON.
  • XfdfLab et XfaLab : aller-retour des données de formulaire et des annotations via XFDF et FDF, et mise en pratique de la détection de l’état XFA avec le runtime optionnel compatible V8 / XFA.
  • CJKTextLab et RTLTextLab : traitement des textes chinois, japonais, coréen, arabe et hébreu — extraction, recherche, géométrie de sélection et comportement de façonnage sur des écritures où les hypothèses naïves d’ordre des caractères ne tiennent pas.
  • AnnotationsLab et NavigationLab : création et édition d’annotations de balisage avec géométrie en quadripoints, et schémas de navigation par signets, destinations, actions nommées et libellés de page.
  • AccessibilityWorkbenchCli et IntakeWorkbenchCli : pipelines de révision et d’ingestion sans interface graphique pour l’évaluation d’accessibilité en lot et la prise en charge des documents entrants, adaptés aux tâches planifiées et au CI plutôt qu’à une fenêtre de bureau.
  • StandardsLab, PreflightReport et PreflightReportCli : workflows de validation et de sauvegarde PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R et PDF/VT, aperçus de rapports, export TXT / HTML / Markdown / JSON / CSV, dossiers batch, récapitulatifs triés, noms de rapports sans doublons, attachement de rapports et comportement de sortie failon= orienté CI.

Pourquoi les équipes choisissent PDFium Delphi Component

  • Signature et chiffrement sans second fournisseur : PAdES B-B jusqu’à B-LTA, horodatage RFC 3161 et chiffrement PDF 2.0 AES-256 font partie de cette bibliothèque. La plupart des équipes Delphi en arrivent là en ajoutant un SDK de signature distinct ou un déploiement OpenSSL ; ici, c’est un seul package, une seule licence et du code source Pascal que vous pouvez auditer.
  • Un travail sur les standards visible dans le code : six familles de standards ISO disposent de véritables validateurs avec des codes de résultat au niveau des clauses, et non d’une simple case à cocher. La sortie de preflight en TXT, HTML, Markdown, JSON et CSV s’intègre directement au CI, et l’exécutable en ligne de commande renvoie un code de sortie d’échec selon les conditions que vous choisissez.
  • Un écrivain PDF que le moteur n’a pas : Fast Web View linéarisé, compactage en flux d’objets et révisions incrémentales par objets modifiés qui préservent le fichier précédent octet pour octet — les formats de sortie que réclament réellement les systèmes d’archivage, la diffusion web et les pistes d’audit.
  • Intégration Delphi native : véritables composants VCL avec code source Object Pascal, et non un contrôle ActiveX ou une visionneuse hébergée dans un navigateur.
  • Qualité de rendu PDFium : utilise la même famille de moteurs PDF open source qui alimente l'affichage PDF de Chromium, tout en maintenant l'intégration dans votre base de code Delphi.
  • Visionneuse et API dans un seul package : combinez une visionneuse PDF soignée à l'écran avec un accès au document de bas niveau, la recherche, les formulaires, l'impression, les API de validation et les rapports de preflight scriptables.
  • Les entrées hostiles traitées comme hostiles : le décodage des flux, la normalisation du contenu et l’analyse de la structure s’exécutent tous sous des budgets explicites de source, de sortie, de jetons, d’imbrication et de ratio d’expansion : un PDF malformé ou délibérément conçu renvoie un état structuré au lieu de faire tomber le processus.
  • Aucune redevance runtime : créez des applications de bureau sans frais par document ou par utilisateur final.
  • Support des IDE modernes : Delphi XE5 à Delphi 13.1 Florence, C++Builder XE5 à C++Builder 13.1 Florence, et workflows Lazarus / Free Pascal, avec compilations Win32 et Win64.
  • Couverture de tests maintenue : les tests Delphi DUnitX, C++Builder GoogleTest et Lazarus FPCUnit couvrent les principaux workflows de document, de rendu, de formulaire, de structure, d'impression, de vignettes et de visionneuse.

Documentation en ligne PDFium Delphi Component

Exemple de code

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;          // signature + jeton TSA + DSS + horodatage d'archive
  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;

Cas d'utilisation courants

  • Systèmes de gestion documentaire avec visualisation PDF intégrée, recherche, impression et workflows de formulaires.
  • Applications de comptabilité et de facturation nécessitant la révision PDF, l'extraction, la gestion des pièces jointes, les vérifications de sortie prêtes pour l'archivage, les manifestes de preflight batch et les pièces jointes de rapports.
  • Logiciels de bureau juridiques, d'ingénierie, médicaux et gouvernementaux où les utilisateurs doivent inspecter, imprimer, valider, rapporter et conserver des documents PDF sans quitter l'application.
  • Workflows de documents signés dans les secteurs réglementés — contrats, factures, bons de livraison et enregistrements qui doivent porter une signature PAdES B-T ou B-LTA avec un horodatage de confiance et rester vérifiables pendant des années.
  • Distribution confidentielle exigeant un chiffrement PDF 2.0 AES-256 avec des permissions définies, écrit par l’application elle-même plutôt que par un outil externe lors d’une seconde passe.
  • Outils de conformité et d'ingestion nécessitant des vérifications de marqueurs PDF/A, PDF/X, PDF/UA, PDF/E, PDF/R ou PDF/VT reproductibles avant de router les fichiers vers des validateurs externes ou des systèmes d'archivage.
  • Visionneuses de rapports et outils internes métier nécessitant un affichage PDF rapide, la rastérisation de pages, un texte copiable et une impression contrôlée.

Quand choisir ce produit

  • Choisissez PDFium Delphi Component lorsque l’application doit consulter, vérifier, signer, chiffrer et livrer des documents PDF : bases de lecteurs professionnels, signature PAdES, chiffrement PDF 2.0, six validateurs de standards, sortie linéarisée et incrémentale, performances sur les gros fichiers, accessibilité, formulaires et impression, le tout depuis un seul package livré avec son code source.
  • Choisissez HotPDF Component lorsque votre application génère des documents et que vous préférez ne redistribuer aucun moteur de rendu : HotPDF embarque son propre moteur de rendu, ses codecs d’image, son moteur de polices, la génération de codes-barres, la mise en page XFA et la validation Factur-X, et se compile directement dans votre exécutable.
  • Choisissez PDF Library for Delphi lorsqu’une seule boîte à outils doit couvrir tout le cycle de vie, ou lorsque vous avez besoin de l’OCR, de la lecture de codes-barres, de la signature par jeton matériel PKCS#11, de la validation par listes de confiance de l’UE, ou d’un accès DLL / ActiveX / Dylib pour des appelants non Delphi.

Vous comparez toute la famille ? Consultez la présentation des bibliothèques de développement PDF pour un comparatif de PDFium Delphi Component, losLab PDF Library et HotPDF Component.

Questions fréquentes

PDFium Delphi Component est-il un simple wrapper autour de la DLL PDFium ?

Non. PDFium effectue le rendu et la lecture ; il ne sait ni signer un document, ni écrire le chiffrement, ni valider un standard PDF, ni émettre de révisions linéarisées, en flux d’objets ou incrémentales. Plus de 62 000 des quelque 115 000 lignes d’Object Pascal du package se trouvent dans des unités sans équivalent dans l’API PDFium et implémentent précisément ces couches : signature PAdES B-B jusqu’à B-LTA, une pile cryptographique AES / SHA / ASN.1 en pur Pascal, le chiffrement PDF 2.0 AES-256, six validateurs de standards ISO, un sérialiseur PDF maison, XFDF, XMP, ainsi que l’architecture de visionneuse, de lecteur et d’accessibilité.

Quel moteur utilise PDFium Delphi Component ?

Il utilise PDFium comme base de rendu et ajoute le modèle de composants Delphi natifs et la couche applicative.

PDFium Delphi Component peut-il signer numériquement des documents PDF ?

Oui. Il implémente les profils PAdES baseline B-B, B-T, B-LT et B-LTA de l’ETSI EN 319 142-1 : construction du SignedData CMS / CAdES conforme à RFC 5652, requêtes d’horodatage RFC 3161 auprès d’une TSA, collecte de la chaîne de certificats dans un Document Security Store et horodatages d’archive. Les clés de signature sont utilisées via le backend Windows CNG, avec RSA-PSS, PKCS#1 ou ECDSA. PDFium lui-même ne sait que lire les dictionnaires de signature existants.

Peut-il chiffrer des documents PDF ?

Oui. SaveAsEncrypted écrit un chiffrement AES-256 conforme à l’ISO 32000-2, y compris la dérivation R6 du hachage de mot de passe de l’algorithme 2.B, les entrées de dictionnaire /O /U /OE /UE /Perms, ainsi que le chiffrement complet des flux et des chaînes. AES-GCM ISO/TS 32003 et les jetons PDF MAC ISO/TS 32004 sont pris en charge. Les primitives AES, SHA-256/384/512, HMAC et ASN.1 sont en pur Object Pascal, sans dépendance C externe.

PDFium Delphi Component prend-il en charge Lazarus et Free Pascal ?

Oui. Des paquets et démos LCL pour Lazarus et Free Pascal accompagnent les composants VCL Delphi et C++Builder.

À quelle vitesse ouvre-t-il de très grands PDF ?

L’accès PDFium à la demande rend des PDF de plusieurs gigaoctets utilisables presque immédiatement lors de tests réels.

Peut-il créer ou modifier des documents PDF ?

Il prend en charge l’assemblage de documents, les opérations sur les pages, la composition N-up, les filigranes, les tampons et les mises à jour du contenu des pages.

Gère-t-il les formulaires AcroForm et XFA ?

Oui. Il gère les champs AcroForm, détecte l’état XFA et peut utiliser des DLL d’exécution V8 et XFA facultatives.

Quels standards PDF peut-il valider ?

Six familles de standards, chacune dotée de son propre validateur et de son assistant de sauvegarde ou d’injection de marqueurs : PDF/A (ISO 19005 parties 1 à 4, y compris A-4 base/f/e fondés sur PDF 2.0), PDF/X (ISO 15930, y compris X-6), PDF/UA (ISO 14289-1), PDF/E (ISO 24517-1), PDF/VT (ISO 16612-2, y compris l’empaquetage en flux MIME VT-2s) et PDF/R (ISO 23504-1). La structure PAdES baseline est validée séparément au regard de l’ETSI EN 319 142-1. Les rapports de preflight s’exportent en TXT, HTML, Markdown, JSON, CSV, SARIF 2.1.0, JUnit XML et NDJSON. Les validateurs couvrent le niveau des marqueurs et un ensemble croissant de clauses au niveau fichier ; associez-les à un moteur de validation dédié lorsqu’une certification formelle est requise.

Y a-t-il des redevances d’exécution ou des frais par utilisateur ?

Non. Les applications sous licence sont distribuées sans redevance par document ni par utilisateur final.

Que comprend une licence et comment fonctionne le renouvellement ?

Une nouvelle licence comprend le code source Object Pascal, un an de mises à jour et le support par e-mail. Le renouvellement coûte 40 % du prix complet.


Découvrir plus de Delphi PDF Component & Spreadsheet Development

S'abonner aux mises à jour produit

Abonnez-vous pour recevoir les dernières mises à jour par e-mail.