PDFium Component Docs

PAdES-ondertekening · PDF 2.0-versleuteling · zes ISO-standaarden · Delphi / C++Builder / Lazarus

Alles wat een rendering-engine niet kan, geschreven in Object Pascal

Een engine tekent pagina's en leest structuren. Een document ondertekenen, versleuteling schrijven, een PDF-standaard valideren of een gelineariseerde of incrementele revisie uitschrijven kan een engine niet. PDFium Delphi Component implementeert dat alles bovenop PDFium: meer dan 62.000 regels verspreid over 36 units zonder tegenhanger in de engine-API, plus de viewer- en de architectuur van de toegankelijke lezer — en elke regel wordt als broncode meegeleverd

Lees het volledige overzicht Doorzoek de functiecatalogus

Wat u bovenop de engine krijgt

Elk punt hieronder is een geleverde mogelijkheid die u kunt verifiëren in de API-referentie en demo's

Digitale handtekeningen, niet het lezen van handtekeningen

De engine kan melden dat er een signature-dictionary bestaat. Deze bibliotheek maakt er zelf een: PAdES baseline B-B, B-T, B-LT en B-LTA volgens ETSI EN 319 142-1, CMS / CAdES SignedData volgens RFC 5652, RFC 3161-tijdstempelverzoeken, Document Security Store-injectie, archief-tijdstempels en vertrouwensvalidatie van de certificaatketen. Ondertekening op afstand en via een HSM splitsen de bewerking, zodat de privésleutel nooit naar het werkstation hoeft te komen

SignPades / ValidatePadesTrust / PreparePadesRemoteSignature

Versleuteling die u zelf schrijft, niet alleen opent

ISO 32000-2 AES-256 met de R6-sleutelafleiding van algoritme 2.B, de volledige versleutelingsronde voor streams en strings, ISO/TS 32003 AES-GCM en ISO/TS 32004 PDF MAC-tokens. De AES-, SHA-2-, SHA-3-, HMAC- en ASN.1-primitieven zijn puur Object Pascal, geverifieerd tegen de gepubliceerde FIPS-testvectoren — geen externe C-bibliotheek komt uw implementatie of securityreview binnen

SaveAsEncrypted; FPdfAes / FPdfSha512 / FPdfAsn1

Een PDF-schrijver die de engine niet heeft

De engine biedt één sequentiële opslag van het hele bestand. Deze bibliotheek schrijft daarop haar eigen revisies: gelineariseerde Fast Web View met Annex F-hinttabellen, object-stream- en xref-stream-verpakking en incrementele dirty-objectrevisies die de vorige uitvoer byte voor byte bewaren. Beschadigde bestanden krijgen strikte, compatibele en herstellende laadbeleiden met gestructureerde diagnostiek in plaats van stille reparatie

SaveAsLinearized / SaveAsObjectStream / BeginIncrementalSave / SaveAsRepaired

Contentextractie verder dan platte tekst

GetStructuredText bouwt uit tekengeometrie en Tagged PDF-semantiek een hiërarchie van pagina / blok / regel / opgemaakte span. ExtractTables detecteert tabellen met randen en tabellen uitgelijnd op witruimte, behoudt samengevoegde spans en levert CSV of JSON. BuildReflowDocument zet een PDF met vaste layout om in semantische HTML. XFDF en FDF wisselen formuliergegevens en 18 annotatiesubtypes uit — formaten waarvoor de engine helemaal geen API biedt

ExtractTables / BuildReflowDocument / ExportXFDF

De breedste IDE-dekking in zijn klasse

Delphi / C++Builder (RAD Studio XE5 tot en met 13.1 Florence) plus Lazarus / Free Pascal 3.8+, Win32 en Win64. Drie IDE-families delen dezelfde fixture-PDF's en regressiesuites

1257 Pascal- + 515 C++-testcases, byte-uitgelijnd

Het volledige PDF-standaardspectrum

PDF/A-1b-uitvoer (SaveAsPdfA) + validatie (ValidatePdfA), plus PDF/UA-, PDF/E-, PDF/X-, PDF/R- en PDF/VT-validatoren met resultaatscodes op clausuleniveau, markerinjectie en versiecompliance-gating. PDF/A dekt ISO 19005 deel 1 tot 4, PDF/X reikt tot X-6 en PDF/VT omvat de VT-2s-streamverpakking

Speciale units FPdfPdfa/Pdfua/Pdfe/Pdfx/Pdfr/Pdfvt.pas

Toegankelijkheids-voorlezen / zwakziende

TPdfReadingSession orkestreert voorlezen voor host-TTS-engines (leeseenheden op zinsniveau, markering op woordniveau, koppeling van gesproken tekst); plus de zwakziendetransformaties InvertPdfBitmap, GrayscalePdfBitmap, DuotonePdfBitmap en live night-duotone-weergave

Een toegankelijkheidslaag die de meeste wrappers volledig missen

Zero-copy + annuleerbaar progressief renderen

Het renderpad schrijft PDFium-uitvoer rechtstreeks in de DIB-buffer van de doel-TBitmap, waardoor een volledige pixelkopie van de hele pagina per frame wordt overgeslagen; RenderPageProgressive peilt tussen iteraties een annuleringstoken en kan midden in het renderen worden onderbroken

Bespaart één breedte×hoogte×4-byte-kopie per frame bij hoge DPI

On-demand streaming voor multi-gigabyte-PDF's

Via de on-demand TStream-adapter van LoadCustomDocument leest PDFium per blok — multi-gigabyte-, externe of database-ondersteunde documenten laden zonder kopie in het geheugen, en een bruikbare eerste weergave is vrijwel meteen bereikt

2.x GB-documenten: vrijwel directe eerste weergave

Drie componenten + 33 gedeelde demo's

TPdf (documentengine), TPdfView (interactieve viewer), TPdfThumbnailView (miniatuurnavigatie); 33 COMMON-demo's gedeeld over drie IDE's, die weergave, zoeken, formulierinvullen, samenvoegen/splitsen, batch-export, afdrukken, beveiligingsaudit, preflight-rapporten en meer dekken

PDFViewer / PreflightReport / SecurityAudit / StandardsLab enzovoort

Beveiliging eerst als standaardinstelling

Acceptatielijst voor linkacties (LinkOptions), startacties standaard uitgeschakeld en een SecurityAudit-demo om risicooppervlakken te auditen — direct veilig in plaats van gevaarlijke acties standaard open te laten

Geschikt voor beveiligingsgevoelige financiële / zorgimplementaties

Broncode inbegrepen · royalty-vrij · langetermijnondersteuning

Levert Pascal-broncode, geen runtime-royalty's, langetermijnonderhoud. Bundelt Win32/Win64 pdfium.dll en pdfium.v8.dll (V8/XFA-enabled), met optionele Skia-renderhooks

Geen kosten per implementatie

Het bewijs

3IDE-families: Delphi / C++Builder / Lazarus
6+PDF-standaarden: A / UA / E / X / R / VT
33voor drie IDE's gedeelde COMMON-demo's
1770+Pascal- + C++-regressietestcases

Wie moet voor PDFium Delphi Component kiezen

Documentviewers / lezers

Ingebedde PDF-viewers die weergavekwaliteit en interactie op productieniveau nodig hebben (tekstselectie, zoekmarkering, links, zoom, doorlopende tweepaginaweergave)

Toegankelijkheid / ondersteunende technologie

Voorleesorchestratie en zwakziendetransformaties voor visueel gehandicapte gebruikers — een laag die de meeste PDF-wrappers helemaal niet hebben

Compliance- / preflight-toolchains

Die PDF/A-generatie en -validatie, PDF/UA-toegankelijkheid, versiegating en CI-vriendelijke preflight-rapporten nodig hebben

Enorme / externe documenten

Multi-gigabyte- of database-ondersteunde PDF's die on-demand moeten laden in plaats van volledig in het geheugen te worden gehouden

Cross-IDE-teams

Teams die Delphi, C++Builder en Lazarus tegelijk gebruiken — één componentenset, dezelfde fixtures, dezelfde demo's

Beveiligingsgevoelige implementaties

Financiële, zorg- en overheidsscenario's met strikte controle over link- / startacties

Rendert een pagina in een paar regels

Geen handgeschreven C-interop — direct native Pascal-componenten:

uses PDFium;

var
  Pdf: TPdf;
  Bmp: TBitmap;
begin
  Pdf := TPdf.Create(nil);
  try
    Pdf.FileName := 'report.pdf';
    Pdf.Active := True;
    Pdf.PageNumber := 0;              // pages are zero-based

    Bmp := Pdf.RenderPage(0, 0,
      Round(PointsToPixels(Pdf.PageWidth, 150)),
      Round(PointsToPixels(Pdf.PageHeight, 150)));
    try
      Bmp.SaveToFile('page1.bmp');
    finally
      Bmp.Free;
    end;
  finally
    Pdf.Free;
  end;
end;

Volgende stappen

Begin met het productoverzicht en de Quick Start, doorzoek de volledige functiecatalogus en de voorbeelden, of lees de Release Notes voor de laatste leveringen