PDF natif au niveau source · Delphi et C++Builder

Des capacités PDF de niveau industriel dans vos applications RAD Studio, sans dépendre d’un runtime externe à la moindre ligne de code

HotPDF est une bibliothèque de composants PDF au niveau source conçue pour Delphi et C++Builder : purement native, sans runtime ni DLL PDF externe, elle fige dans votre unique processus exécutable le façonnage typographique avancé, la signature conforme, le preflight normatif et le traitement multi-gigaoctets

  • Source Delphi pur · aucune DLL PDF externe
  • Moteurs OpenType GSUB + GPOS complets
  • Signature PFX/PKCS#12 en cours de processus
  • PAdES B-B / B-T / B-LT / B-LTA
  • Conformité triaxe PDF/A · PDF/X · PDF/UA
  • API fichier directe multi-gigaoctets

Huit différenciateurs que les composants concurrents peinent à copier

Les arguments ci-dessous sont tous des capacités livrées de HotPDF, pas des promesses de feuille de route. Chacun s’accompagne de preuves d’implémentation vérifiables — jusqu’aux unités de code source, noms de fonctions et tests qui passent

Natif au niveau source · aucun runtime PDF externe

Intégrez directement le source Pascal dans votre projet : la génération, l’analyse et l’enregistrement des PDF se déroulent intégralement dans votre processus, avec un débogage et un déploiement totalement maîtrisés. Les backends C de l’imagerie et de la compression (zlib-ng, libjpeg-turbo, OpenJPEG, jbig2dec) sont liés en fichiers objets statiques ; aucun DLL de moteur PDF supplémentaire à l’exécution

API Pascal native · backends C liés statiquement

Façonnage + positionnement OpenType complets

Un moteur de substitution GSUB complet (LookupType 1–8) et un moteur de positionnement GPOS complet (les 9 LookupTypes) : ligatures, petites capitales, substitutions contextuelles, crénage par paires et contextuel, mark-to-base, mark-to-mark, attachement cursif — tout y est. La plupart des composants Delphi PDF concurrents sont ici à blanc

Plus de 20 fonctionnalités typographiques OpenType activées automatiquement en sortie de texte

Façonnage de scripts complexes côté producteur

Le façonnage côté producteur couvre plus de 20 scripts : arabe (y compris Supplement / Extended-A/B), syriaque, mongol, tibétain, devanagari et famille Indic, javanais, thai/lao, hébreu, khmer, birman, etc. ; avec le pipeline bidirectionnel UAX #9 et le mapping inverse /ToUnicode complet, copier/coller/recherche restitue les points de code d’origine

35 entrées de mapping inverse de ligatures (LAM-ALEF, famille YEH-HAMZA, Allah, etc.)

Signature PFX / PKCS#12 en cours de processus · zéro dépendance

Un seul appel à THotPDF.SignPDFWithPFX suffit pour signer en PFX/PKCS#12 — sans OpenSSL ni fournisseur de chiffrement de plateforme. Toute la chaîne ASN.1, RSA, AES, déballage PKCS#12 et CMS SignedData (RFC 5652) est implémentée au sein de HotPDF : résultats reproductibles et auditables

Unités d’implémentation : HPDFASN1 / HPDFRSA / HPDFCrypt / HPDFPFX / HPDFCMS / HPDFAES

Validation à long terme PAdES · de bout en bout

PAdES B-B / B-T / B-LT / B-LTA est pris en charge — le morceau dur exigé par la conformité eIDAS européenne : horodatage RFC 3161, dictionnaires DSS/VRI, signatures d’horodatage de document, contraintes Seed Value, XAdES-in-PDF, tout y est. Les concurrents s’arrêtent généralement au CMS de base

Pensé pour l’archivage à long terme et la signature électronique : répond directement aux exigences légales de conservation des preuves

Conformité triaxe + rapports preflight

Verrouille PDF/A-1/-2/-3, PDF/X-1a/-3/-4 et PDF/UA-1 comme profils de conformité indépendants et simultanés ; les appels non conformes lèvent des exceptions de diagnostic au lieu de produire silencieusement des PDF non conformes. Preflight émet en texte, JSON, HTML, CSV ou XML MRR déterministe et peut combiner les politiques intégrées avec des plugins bornés de fonctionnalités de confiance et de validation

Verrouillage de version PDF méthode par méthode : RequirePDFVersion + StrictVersionLock

API fichier directe multi-gigaoctets

Traitement direct de fichier à fichier, sans construire le graphe d’objets en mémoire : DAOpenFileReadOnly, DACopyFile, EncryptFile, DecryptFile et consorts traitent les tables xref classiques, les flux XRef, les fichiers à références hybrides et les mises à jour incrémentales, avec des débits de l’ordre de la seconde

2 Go / 1,67 million d’objets : chiffrement AES-256 en ~14 s ; nombre de pages d’un document de 1,25 Go lu en millisecondes

Sous-ensemblage CFF / OpenType-CFF / CID

Créez des sous-ensembles des polices TrueType, OpenType-CFF et CID-keyed CFF (EnableFontSubsetting) en préservant les IDs de glyphes pour le Type0/Identity-H — les documents CJK passent d’environ 14 Mo de CID-keyed CFF à 500 Ko–2 Mo, et un TTF latin typique de 350 Ko à 10–15 Ko

Tags de sous-ensembles déterministes, sortie reproductible à l’octet près

Quatre adaptateurs de moteurs de rapports

FastReport, QuickReport, ReportBuilder, DevExpress ExpressPrinting (couvrant cxGrid/cxRichEdit/cxScheduler/cxPivotGrid) plus l’adaptateur DBGrid — branchez vos rapports existants en un geste sur le backend PDF de HotPDF, sans réécrire vos rapports

Les unités d’adaptateurs se trouvent dans Lib/addons/<engine>

Des preuves concrètes, pas seulement des déclarations

2 Gotraités dans un seul document, 1,67 million d’objets mesurés
47unités de code source Pascal
41 %de réduction de taille mesurée avec les flux d’objets compressés
756+sujets API, exemples, conformité et flux de travail
Livrés et vérifiables. Les tests de régression DUnitX (Win32 / Win64) et GoogleTest (C++Builder) montent la garde en continu, les déclarations de conformité sont validées par veraPDF ; PDFSpecComplianceMatrix.md consigne « aucun déficit de code de spécifications PDF non implémenté » sur la surface d’écriture prise en charge

Qui devrait sérieusement regarder HotPDF

Documents d’entreprise / signature électronique

Contrats, factures, archivage — il faut la validation à long terme PAdES, les mises à jour incrémentales (BeginIncrementalUpdate) pour préserver les plages d’octets signées, et la conformité d’archivage PDF/A

Publication multilingue / scripts complexes

Arabe, famille Indic, CJK et autres scripts qui exigent un façonnage et un positionnement corrects et un copier/coller fidèle — HotPDF règle d’un coup « rendu juste, copie juste »

Pipelines PDF massifs / côté serveur

Chiffrement, déchiffrement, comptage de pages et extraction en lot — l’API fichier directe traite les fichiers multi-gigaoctets sans les retenir intégralement en mémoire

Brancher le PDF sur un parc de rapports existant

Vous utilisez déjà FastReport / QuickReport / ReportBuilder / DevExpress — un adaptateur suffit pour passer au backend HotPDF en conservant vos conceptions de rapports

Bureautique / livraison en un seul fichier

Logiciels bureautiques et métiers qui veulent un déploiement en un seul exécutable, refusent d’embarquer un DLL PDF tiers et veulent déboguer toute la chaîne dans leur propre processus

Accessibilité / PDF/UA

Arbres de structure du PDF balisé, role maps, contenu marqué, /Alt//ActualText et autres attributs d’accessibilité, pour satisfaire PDF/UA-1 (ISO 14289-1)

Une ligne pour signer, zéro dépendance externe

Pas d’OpenSSL, pas de fournisseur de chiffrement de plateforme — la signature PFX/PKCS#12 s’accomplit entièrement dans le processus HotPDF :

var Pdf: THotPDF;
Pdf := THotPDF.Create(nil);
try
  Pdf.FileName := 'contract.pdf';
  Pdf.SignPDFWithPFX('contract.pdf', 'signed.pdf',
                     'cert.pfx', 'pfx-password');
finally
  Pdf.Free;
end;

Besoin de validation à long terme (PAdES B-LTA) ? Ajoutez les dictionnaires DSS/VRI et l’horodatage RFC 3161 ; pour mettre à jour incrémentalement un document déjà signé sans casser les plages d’octets signées, utilisez BeginIncrementalUpdate / SaveIncrementalUpdate

Et maintenant

Commencez par la liste complète des capacités et la présentation du composant, approfondissez point par point dans le sommaire de la documentation par classe (THotPDF, THPDFPage, THPDFPara), ou feuilletez directement les notes de version pour voir ce qui a été livré récemment