Kjernekomponenter
- TPdf - Hovedkomponenten for PDF-dokumenthåndtering: åpning, navigering, tekstuttrekk og redigering av PDF-dokumenter
- TPdfView - Visuell komponent for visning av og samhandling med PDF-sider
- TPdfReadingSession - Orkestreringskomponent for opplesning med vertens TTS-motorer og ordsporing i TPdfView
- TPdfThumbnailView - Rullbart miniatyrsidepanel for sidenavigering
Dokumentoperasjoner
- Dokumentlasting - Last PDF-filer fra disk, minnestrømmer, komplette byte-arrays, nullbaserte
Index/Count-byte-array-vinduer eller behovsstyrte TStream-adaptere viaLoadCustomDocument. Kompatible, strenge og gjenopprettende policyer legger til begrenset diagnostikk for klassisk, hybrid og xref-strøm uten å erstatte PDFiums semantiske parser- Verifisert reparert utdata -
SaveAsRepairedoppretter en fullstendig kopi med én revisjon og laster uavhengig xref- og sidestruktur inn igjen under streng modus før byte leveres eller en fil byttes ut atomært- Typet objektgraf -
ExportObjectGraphsender ut begrenset typet JSON for direkte verdier og verdier i objektstrømmer, mensSaveAsObjectGraphPatchedanvender validerte endringer i toppnivåordbøker som en trinnvis inkrementell revisjon og laster resultatet inn igjen under streng modus før levering- Passordbeskyttelse - Åpne passordbeskyttede PDF-dokumenter og rapporter effektive
UserPermissionsfor den autentiserte økten- Dokumentoppretting - Bygg nye PDF-dokumenter fra bunnen av med
CreateDocument,AddPage,AddText,AddImage,AddPicture,AddJpegImageogCreatePath- Dokumentsparing - Lagre endrede dokumenter med ulike valg (inkrementell lagring, fjerning av sikkerhet) og eksplisitte PDF-målversjoner fra PDF 1.0 til PDF 1.7
- PDF/A-1b-utdata -
SaveAsPdfA/SaveAsPdfAToStreametterbehandler grunnlagringen med en inkrementell oppdatering som injiserer en XMP-metadatastrøm, en sRGB ICC OutputIntent og en oppdatert dokumentkatalog, slik at resultatet er i samsvar med PDF/A-1b. Egendefinerte ICC-profiler støttes viaTPdfASaveOptions.IccProfileData- PDF/A-validering -
ValidatePdfAog den skrivebeskyttede egenskapenPdfAConformanceskanner et åpent dokument for XMPpdfaid-markører, OutputIntent med innebygd ICC og kryptering, og rapporterer samsvarsnivået (pac1a,pac1b,pac2b,pac3b,pacNoneellerpacUnknown) sammen med en liste overTPdfAValidationIssue-oppføringer som beskriver hvert funn- PDF-versjonsvalidator - Når SaveAs retter seg mot PDF 1.0 til PDF 1.7, avviser skriveren enhver ordbokoppføring, filter, annotasjonssubtype, handlingstype, font, fargerom eller krypteringsparameter som ble innført etter den valgte målversjonen (for eksempel JBIG2Decode, MarkInfo, OutputIntents, AES / AES-256, Polygon / Caret / Watermark / Redact-annotasjoner og JavaScript / Trans / SetState-handlinger)
- Strømkomprimering - Automatisk FlateDecode-komprimering sørger for at alle PDF-strømmer komprimeres optimalt ved lagring; sett
Compressed := Falsefor å velge det bort i feilsøkingspipelines- Skalerbar partisammenslåing -
MergeFilesimporterer filbaserte kilder med sideområder og passord per kilde, holder høyst ett kildedokument åpent, og eksponerer policyer for fremdrift, kansellering, stopp eller hopp over, tilbakerulling, skjema, disposisjon, ressurser og viserinnstillinger- Import av sideutvalg -
ImportPagesByIndexkopierer en eksplisitt nullbasert indeksliste fra et kildedokument, med InsertAt = 0 for å sette inn før side 1 eller InsertAt = PageCount for å legge til på slutten. Send inn en tom indeksliste for å importere alle kildesidene- N-up-komposisjon -
ImportNPagesToOnereturnerer en helt nyTPdfder sidene er NumX×NumY-kompositter av kildedokumentets sider, dimensjonert i PDF-brukerenheter (1 enhet = 1/72 in)- Siderekkefølge -
MovePagesomorganiserer sider på stedet med en nullbasert indeksliste og en destinasjonsindeks for den første flyttede siden- Validering av sideplan -
ValidatePagePlanforhåndsviser tilknytninger for sletting, flytting, innsetting, deling og sammenslåing, tar inventar av effekter på navigering, etiketter, skjema, strukturtre, importerte funksjoner og signaturer, og avviser planer som ville etterlate hengende mål eller endre signert innhold uten eksplisitt autorisasjon- Tofaset layoutgenerering -
GenerateLayoutmåler og paginerer brutt tekst, linjer, bilder, side-XObject-er, topptekster og bunntekster før sideobjektene skrives ut atomært, mens stabile{page}- og{pages}-plassholdere bevarer det målte sideantallet- Diskbasert paginert layout -
GeneratePagedLayoutskriver kommandoer til søkbar lagring valgt av kalleren, gjenoppretter hver side fra kompakte ikke-sammenhengende segmenter, avgrenser beholdte sidetabeller med en LRU-hurtigbuffer og legger til PDFium-sider sekvensielt- Tabellayout på tvers av sider -
TPdfLayoutTableløser faste, fraksjonelle og innholdsbestemte kolonner én gang, gjentar sammenhengende topptekstrader, deler kvalifiserte brødtekstrader, holder radspennende grupper intakt og skriver ut bildetekster, cellekanter, lenker og ett sammenhengende semantisk hierarki av Table / TR / TH / TD på tvers av sidene- Hurtigbufrede layoutnoder - Layoutplaner hurtigbufres etter fullstendig identitet for begrensninger, innhold, font, stil, kilde og måler, mens
TPdfLayoutCachedNodebygger gjentatte maler lat og sender ut hver plassering fra ett gjenbrukbart opprinnelig Form XObject- Automatisk Tagged PDF-layout -
GenerateTaggedLayoutsender ut opprinnelige MCID-er, artefakter, et Document-strukturtre, ParentTree- og IDTree-tilknytninger, overskrifter, lister, figurer med alternativ tekst, tabelltopptekster og Link-annotasjoner med OBJR-eierskap fra samme målte layoutplan; elementbegrensninger holder blokker og overskrifter sammen, håndhever minimum for widow / orphan og tvinger frem fysiske sideskift- Redigering av marked content -
PageObjectMarks,AddPageObjectMark,SetPageObjectMarkParam,RemovePageObjectMarkParamogRemovePageObjectMarkinspiserer og endrer BDC-egenskapslister gjennom stabile opprinnelige merker- Bidi- og kompleks skript-tekst -
AddShapedTextgjør retningsløp, kontekstuelle former, ligaturer, fremskritt og offseter om til posisjonerte CID Type 2-glyffer, mens genererte ToUnicode-tilknytninger ogActualTextbevarer logisk Unicode-semantikk- Forfatterskap av CID Type 2-font -
AddCidType2Textbygger inn kallerleverte TrueType-data med eksplisitte CID-til-GID- og ToUnicode-tilknytninger, trygg valgfri subsetting, kontrollert fullfont-fallback og integritetskontroller ved uttrekk- Samlet cache-budsjett i byte -
TPdf.CacheBudgetByteskoordinerer tolkede sidescener, miniatyrer, strukturdata, tekståndslandsbilder og sideobjekt-øyeblikksbilder gjennom én målebar global LRU, mensTPdfTileCacheog systemfont-cachen kan koble seg til en kallerenvalgt styring- Systemfontleverandør for verten -
ConfigureSystemFontProviderruter opprinnelige forespørsler om manglende fonter gjennom en applikasjonslevert leverandør med bytevalidering, begrenset LRU-hurtigbuffer, valgfri delt bytestyring, opprinnelig fallback, tabelluttrekk og livssyklusstatistikk- Gjenbruk av Form XObject-sider -
CreateXObjectFromPagelager et gjenbrukbartTPdfXObject-håndtak fra en hvilken som helst side i et annet dokument;InsertFormObjectFromXObjectsetter inn ÉN kopi av den innkapslede siden på den gjeldende siden. Ideelt for vannmerker, maloverlegg og arbeidsflyter der én side stemples på mange. Sideobjektet kan posisjoneres, skaleres og roteres gjennomFPDFPageObj_SetMatrixogTPdfMatrix-hjelperne- Sidehåndtering - Legg til, slett og manipuler enkeltsider;
AddPage(0, ...)setter inn den aller første siden og aktiverer den umiddelbart- Sidebokser - Les og skriv MediaBox, CropBox, BleedBox, TrimBox og ArtBox på gjeldende side
- Katalogspråk - Les og skriv dokumentspråket som lagres i catalog /Lang-oppføringen
- Trailer File IDs - Les permanente og skiftende trailer /ID-oppføringer som binære bytes
- Dokument-JavaScript-handlinger - List opp navn og skript for dokumentnivåets JavaScript-navnetre-handlinger
- Tagged PDF-strukturtre - Undersøk logiske strukturelementer, tilgjengelighetstekst, språk, marked-content-ID-er og hierarki for taggere PDF-sider
- Viserinnstillinger - Les
PrintCopies,PrintPageRanges,PrintScalingogPrintPaperHandlingfra dokumentets viewer-preference-ordbok; lagrede PDF-er får som standard en Fit Height-åpningshandling for første side
Tekstoperasjoner
- Tekstuttrekk - Trekk ut tekst fra PDF-sider med tegnpresisjon via
Text,TextInRectangleog de indekserte egenskapeneCharacter,CharacterRectangleogCharacterOrigin- Strukturert tekstmodell -
GetStructuredTextbygger et begrenset hierarki av side, blokk, linje og stiliserte spenn fra opprinnelig tegngeometri, fontmetadata, tekstobjektidentitet, Tagged PDF-semantikk og reserveorden etter fysisk layout- Tabelloppdagelse og -uttrekk -
ExtractTablesogExtractDocumentTableskombinerer opprinnelige ord-bokser med transformerte skillelinjer for å oppdage tabeller med kantlinjer eller mellomromsjustering, bevarer sammenslåtte spenn, poengsetter konfidens, markerer sidefortsettelser og gir ut CSV eller JSON- Semantisk reflow og responsiv HTML -
BuildReflowDocumentkombinerer Tagged PDF-semantikk, slutning fra fysisk layout og tabelluttrekk til et begrenset gjenbrukbart nodetre hvis trygge HTML-utdata bevarer overskrifter, avsnitt, lister, figurer, sideseksjoner og tabellspenn- Søkbart OCR-lag -
ApplyOcrSearchLayersender begrensede topp-ned BGRA-sidegjengivelser til en applikasjonslevert leverandør, avbilder konfidensfirkanter gjennom opprinnelig sidegeometri og legger til usynlig søkbar tekst uten å kode skannebildene på nytt- Lesenheter på setningsnivå - TPdf.ReadingUnits, TPdf.DocumentReadingUnits, TPdfView.ReadingUnits og BuildReadingUnits eksponerer setningsstore TPdfReadingUnit-poster for synkronisert TTS-opplesning
- Visuell linjemarkering -
TPdfView.SelectLineAtvelger den visuelle tekstlinjen som inneholder en enbasert side- og nullbasert tegnindeks, gjennom samme linjegrensemodell som brukes av trippelklikkmarkering ogShift+HomeellerShift+End- Ordnivåmarkering ved opplesning -
TPdf.PageWordBoxes,TPdfView.PageWordBoxes,BuildWordBoxes,WordBoxIndexAtCharIndex,TPdfView.SelectWordBox,TPdfView.SelectWordSpan,TPdfView.TrackReadingWordAt,TPdfView.SetReadingWord,TPdfView.ClearReadingWord,ReadingWordColor,ReadingWordFollowmapper en tegnoffset på siden til den tilhørende TPdfWordBox, fremhever den og returnerer ordindekset; fremhever én TPdfWordBox som det gjeldende oppleste ordet i TPdfView; fjerner det gjeldende ordnivåleseoverlegget i TPdfView; styrer overleggsfargen for den gjeldende ordnivålesemarkøren; og styrer om TPdfView ruller det gjeldende oppleste ordet inn i synsfeltet under opplesningssporing- Orkestrering av opplesningsøkt -
TPdfReadingSession,TPdfSpokenText,SpokenTextAppend,BuildSpokenTextFromWords,SpokenToPageCharogEstimateSpokenWordIndexkoordinerer vertens TTS-motorer, talte biter, ordposisjonskall, estimert tempo, pause-/gjenoppta-håndtering og oppdateringer av TPdfView-ordmarkøren- Tekstsøk - Finn tekst med søkevalg for store/små bokstaver, hele ord og fortløpende treff ved hjelp av
FindFirst,FindNextogFindPrevious, eller strøm treff fremover og bakover gjennom hele dokumentet medTPdf.CreateDocumentSearch, resultatrektangler i siderom, kooperativ kansellering og konstant minnebruk for sidehåndtak- Søkefremhevningsoverlegg -
TPdfView.HighlightSearchTexterstatter gjeldende sides treffoverlegg, mensAddSearchTextHighlightlegger til unike områder for flere søkeuttrykk, slik at treff fra flere søk kan være synlige samtidig.ClearHighlightfjerner hele settet; navigering til en annen side fjerner det automatisk fordi tegnområdene er side spesifikke.HighlightColorhar standardverdienclYellowog er publisert slik at applikasjoner kan teme overlegget- Tegnegenskaper - Få tilgang til skriftstørrelse, vekt, vinkel og plassering for enkelttegn med de indekserte egenskapene
CharacterAngle,CharacterFontSize,CharacterFontWeight,CharacterGenerated,CharacterIsHyphenogCharacterMapError- Støtte for europeiske tegn -
AddTextlaster automatisk inn og hurtigbufrer den passende systemfonten i TrueType-format før det opprettes et tekstobjekt, slik at aksenterte tegn fra tsjekkisk, fransk, tysk, spansk, portugisisk, polsk og tyrkisk, som PDFiums innebygde standardfonter ikke kan gjengi, nå vises riktig uten kodeendringer- Teksttilføyelse - Legg til ny tekst på PDF-sider med egendefinerte fonter, farger, gjennomsiktighet og rotasjon
- Plassering av tekstobjekter - Angi posisjoner per tegn for eksisterende tekstobjekter gjennom
SetTextPositionsogTPdfSingleArray- Fontinformasjon - Hent fontegenskaper, inkludert familienavn, innbyggingsstatus, kursivvinkel, ascent / descent og rå fontdata per sideobjekt
Støtte for merknader
- Merknadstyper - Støtte for tekst-, lenke-, fremhevings-, understreknings-, gjennomstreknings- og mange andre merknadstyper
- Oppretting av merknader - Opprett nye merknader programmatisk
- Redigering av merknader - Endre eksisterende merknadsegenskaper, inkludert farge, gjennomsiktighet og innhold
- Lenkemerknader - Håndter interne og eksterne lenker med handlingsstøtte
Skjemastøtte
- Stemmebaserte skjemafeltlesere - FocusedFormFieldValue, FocusedFormFieldName og FocusedFormFieldDetails på TPdf og TPdfView eksponerer gjeldende logiske skjemafeltverdi, navn og TPdfFormFieldInfo for tastatur- eller stemmestyrt skjemautfylling
- Skjematyper - Støtte for AcroForm- og XFA-skjemaer
- Skjemautfylling - Interaktiv skjemautfylling med JavaScript-støtte
- V8 DLL-valg - Sett
EnableV8Enginefør lasting for å brukepdfium.v8.dllfra den samsvarendeDLLs\Win32- ellerDLLs\Win64-mappen, og spør etter tilgjengelige V8/XFA-hjelpere viaV8FeaturesAvailable,XfaBStrHelpersAvailableogGetRecommendedV8Flags- Felttilgang - Les og skriv skjemafeltverdier etter indeks eller posisjon
- Feltinformasjon - Få tilgang til felttype, flagg, navn og andre egenskaper
- Feltflagg - Oppdater AcroForm-feltflagg etter indeks eller posisjon gjennom
SetFormFieldFlags/SetFormFieldFlagsAt, inkludert flagg for skrivebeskyttet, påkrevd, passord og flervalg- Flatting av skjema -
GenerateFormAppearancesregenererer /AP-utseendestrømmen for hver skjemawidget på hver side, ogFlattenPage/FlattenAllPagesbaker merknader og skjemafelt inn i statisk sideinnhold (som ikke kan redigeres)- Tekstmarkering, utklippstavle & angre / gjør om for skjemawidgets - På den fokuserte AcroForm-widgeten eksponerer visningen
GetSelectedFormText,CopySelectedFormTextToClipboard,CutSelectedFormTextToClipboard,PasteFormTextFromClipboard,SelectAllFormTextsamtFormUndo/FormRedo/FormCanUndo/FormCanRedo. Redigereren håndtererCtrl+A,Ctrl+C,Ctrl+Insert,Ctrl+X,Shift+Delete,Ctrl+VogShift+Insert; klipp ut og lim inn avviser skrivebeskyttede felt eller økter uten tillatelse til skjemautfylling eller endring- Dokumentredigeringstransaksjoner og angre / gjør om -
BeginEditTransaction,CommitEditTransactionogRollbackEditTransactiongrupperer vilkårlige redigeringer av sider, objekter, merknader, vedlegg og metadata, mensUndoEdit,RedoEditog portable redigeringsjournaler bruker begrensede SHA-256-verifiserte toveisdeltaer- Krasjgjenoppretting og commit-drevet autolagring - kontrollsummede gjenopprettingspakker binder kilde- og gjenopprettingsfingeravtrykk til en begrenset redigeringsjournal, mens atomisk autolagring oppdaterer en eksplisitt sidefil etter commit, angre eller gjør om uten å skrive kilde-PDF-en på nytt
Bildeoperasjoner
- Bildeuttrekk - Trekk ut bitmap-er fra PDF-sider med den indekserte
Bitmap-egenskapen; iterer overBitmapCountfor å lagre hvert bilde til disk- JPEG-innsetting -
AddJpegImagetar en TStream med rå JPEG-byter og bygger inn bildet som en /DCTDecode XObject uten re-koding- Picture-støtte -
AddPicturetar imot etTPicture-objekt med automatisk formatkonvertering gjennom de registrerte VCL/LCL-grafikkklassene- Direkte bildeinnsetting -
AddImage(FileName)gjenkjenner ethvert format som er registrert hos VCL- eller LCL-grafikkenhetene (BMP, PNG via PngImage, JPG, ...) og deler AddPicture-pipelinen.AddImage(TBitmap)hopper over TPicture-mellomleddet, noe som forenkler kallere som allerede har en TBitmap fra rendering eller batchgenerering- ICC-profil for bilder - Bildeobjekter på siden eksponerer sine innebygde ICC-profildata når de finnes (binding for
FPDFImageObj_GetIccProfileDataDecoded)- Miniatyrgenerering - Generer miniatyrbitmap-er for gjeldende side via
Thumbnail-egenskapen, eller render en vilkårlig enbasert side gjennomTPdf.RenderPageThumbnailuten å endrePageNumber, med en revisjonsbevisst LRU begrenset av tak for antall oppføringer og pikselbyter- Hurtigbufret tolket sidescene -
TPdf.RenderPageByIndex,RenderPageThumbnailogExtractThumbnailgjenbruker begrensede LRU-hurtigbufrede PDFium-sidescener, mens sideredigeringer, endringer i sidetreet, skjematilstand og dokumentnedrigging ugyldiggjør foreldede oppføringer
Hjelpeenheter
- Asynkron infrastruktur -
FPdfAsynckombinerer strukturert kooperativ kansellering med fjernbare callbacks og fristkilder, konfigurerbarTPdfFuture<T>-resultatutsending og en gjenbrukbarTPdfAsyncExecutormed faste workere, fire FIFO-prioritetsbaner, mottrykk fra begrenset kø, oppgavehåndtak per task, tidsdiagnostikk, aggregert statistikk og kontrollert nedstenging- Strømadapter -
TPdfStreamAdapterkobler en PascalTStreamtil PDFiumsFPDF_FILEACCESS-callbacks slik atLoadCustomDocumentleser blokker ved behov i stedet for å buffere hele PDF-en i minnet- Økter for progressiv nedlasting -
TPdfProgressiveDocumentholder PDFiums opprinnelige tilgjengelighetsleverandør i live, mater dokument-, skjema- og sidehint inn iTPdfRangeRequestScheduler, slår sammen manglende områder, fortrenger bakgrunnsoverføringer for sidekritiske byter, begrenser forespørselsstørrelser og nye forsøk, kansellerer overflødige overføringer og åpner en linearisert side før den komplette PDF-en er ankommet- Begrenset strøminspeksjon -
TPdfStreamInspectortar inventar av fysiske strømobjekter, eksponerer trygge råvinduer og ordnet dekoding med generelle filtre, rapporterer opprinnelige tilgangsstier for bilder og vedlegg, og håndhever budsjetter for kilde, utdata, ordbok, antall og ekspansjonsforhold- Normalisering av innholdsstrøm -
TPdf.SaveAsNormalizedContenttokeniserer logisk sideinnhold, fjerner kommentarer, validerer tilstands- og beholderebalanse, bevarer ustøttede operatorer og inline-bileddata og slår sammen trygge/Contents-matriser- Fast Web View-utdata -
TPdf.SaveAsLinearizedskriver objektene for første side foran senere sider, sender ut to kryssreferanseseksjoner og bygger hint-tabeller for sideoffset og delte objekter, slik at en HTTP Range-klient kan åpne en forespurt side uten å laste ned hele filen- Objektstrøm-utdata -
TPdf.SaveAsObjectStreampakker kvalifiserte verdier inn i begrensede ObjStm-grupper for PDF 1.5+, holder åpningskritiske objekter direkte og skriver adaptive type-2 xref-oppføringer for mindre filer uten å ofre vilkårlig tilgang- Inkrementell lagring av skitne objekter -
TPdf.BeginIncrementalSaveogCommitIncrementalSavesammenligner stabile semantiske øyeblikksbilder, bevarer hver tidligere byte, kryptert eller ikke, arver R5-, R6- eller R7-sikkerhetsparametere, legger kun til endrede objekter, gjenåpner hvert resultat under streng modus og bruker en varlig sidefil pluss atomisk erstatning ved fil-commits- Kontroll av valgfritt innhold -
TPdf.InspectOptionalContenttar inventar av lag, konfigurasjoner, bruksmetadata, radiogrupper, rekkefølge, låser, OCMD-policyer og synlighetsuttrykk, mensSaveAsOptionalContentConfiguredskriver deterministiske lagtilstander som PDFium anvender gjennom sin opprinnelige renderingskontekst- Begrenset arbeidslager -
TPdfRandomAccessStorebeholder små data i minnet, flyter én gang over til en privat slett-ved-lukking midlertidig fil ved en takverdi valgt av kalleren og leverer posisjonerte lesinger uten å endre den delte pekeren;TPdf.SaveMemoryLimitbruker samme policy på kjernens etterbehandling ved lagring, mens standard oppdateringer av åpningshandling og sidetikett-katalog bruker vinduer med fast størrelse og en sparsom lat objektindeks- Innebygd versjonsspørring -
TPdf.PdfVersiongjenbrukerFPDF_GetFileVersion-parsertilstanden for hode- og katalogsemantikk, med én åtte-bytes hodesjekk som avviser feilformede katalognedgraderinger- Verktøykasse for matrisegeometri -
FPdfMatrixpakker PDFiumsFS_MATRIXmed post- og pre-komposisjon, dreiepunktbevisste transformasjoner, stretch / contain / cover-rektangeltilpasning, skaleringsbevisst inverterbarhetsdiagnostikk, dekomposisjon, ikke-muterende inverse hjelpere, avbildning av vektorer og firkanter, punkt- eller rektangelbatcher med én allokering, in-place-varianter og transformerte grenser i én gjennomgang- Avbrytbar progressiv rendering -
TPdf.RenderPageProgressivedriver PDFiumsFPDF_RenderPageBitmap_Start+RenderPage_Continue-løkke og spør enIPdfCancellationTokenmellom iterasjonene viaIFSDK_PAUSE-callbacken, slik at lange høy-DPI-renderinger kan avbrytes midt på siden i stedet for å blokkere til fullføring. Returnerer enTPdfProgressiveStatusmedprsDone,prsCancelledellerprsFailed- Renderingssti uten kopiering -
RenderPage/RenderTile/RenderPageProgressiveskriver PDFium-utdata direkte inn i mål-TBitmap-ens DIB-buffer i stedet for å mellomlagre i en intern buffer, noe som sparer én minnekopi på bredde × høyde × 4 byte per rendering - mest merkbar ved høy DPI (miniatyrpaneler, eksport i utskriftskvalitet, batcheksport). En reservesti per skannelinje er bevart når mål-DIB-en ikke kan wrappes trygt- Bitmappetransformer for nedsatt syn - InvertPdfBitmap, GrayscalePdfBitmap og DuotonePdfBitmap transformer rendrede 32-bits TBitmap-piksler på stedet for inverterte, gråtonede eller tofargede visninger for nedsatt syn
- Live-visning for nedsatt syn -
TPdfView.OptionsstøtterreInvertogreNightDuotone, medNightDuotoneInkogNightDuotonePapersom styrer den levende nattpaletten før overleggene tegnes
Tegneoperasjoner
- Banetegning - Opprett baner med linjer, Bézier-kurver og lukkede former
- Fjerning av objekter - Fjern sideobjekter og regenerer sideinnhold fra TPdf eller TPdfView
- Fyll og strek - Konfigurer fyllmodus, farger, gjennomsiktighet og strekegenskaper
- Blandingsmoduser - Støtte for ulike PDF-blandingsmoduser
- Linjestiler - Konfigurer linjeende, linjeskjøt og strekbredde
Digitale signaturer
- Signaturdeteksjon - Oppdag og list opp digitale signaturer i PDF-dokumenter
- Signaturinformasjon - Få tilgang til signaturinnhold, byteområde, subfilter, begrunnelse og tidspunkt
- MDP-tillatelser - Spør etter dokumentets tillatelser for endringsdeteksjon og -forebygging
- Revisjonsanalyse etter signering -
AnalyzeSignatureRevisionsklassifiserer inkrementelle endringer mot originale byter opp mot DocMDP og FieldMDP, identifiserer oppdateringer av valideringsmateriell og rapporterer skyggedefinisjoner eller uløste komprimerte objekter uten å lagre dokumentet på nytt- Ellipsekurveprofiler for PDF 2.0 - PAdES-validering identifiserer NIST-, Brainpool-, Ed25519- og Ed448-signaturer, kontrollerer kongruens mellom kurve og digest samt AlgorithmIdentifier-parametere, og rapporterer ustøttet opprinnelig kryptografi uavhengig av ugyldige kombinasjoner
Vedleggstøtte
- Vedleggstilgang - Les, opprett, endre og slett innebygde filvedlegg
- Begrenset batchuttrekk -
ReadAttachmentMetadatatar inventar av vedleggene én gang, ogExtractAttachmentsToStreamsskriver én dekodet nyttelast om gangen under kontroller per fil, aggregert, per chunk og for kansellering- Vedleggsnavn - Få tilgang til filnavnene til vedlegg
- Vedleggstyper - Les MIME subtype-verdier for innebygde filer når de finnes
- Bokmerker - Naviger dokumentbokmerker med hierarkisk støtte via
Bookmarks-arrayen,BookmarkChildren,HasBookmarkChildrenogBookmarkFrom-hjelperne- Navngitte destinasjoner - Få tilgang til navngitte destinasjoner etter indeks eller navn gjennom
Destination,DestinationByNameogDestinationCount- Sidetiketter - Hent sidetiketter for hver side via
PageLabel; nyttig når dokumenter bruker romertall for forord eller innledende materie- Nettlenker - Oppdag og naviger lenker på sider med
WebLink,WebLinkCountogTPdfView.WebLinkAtPos- Lenkemerknader - Få tilgang til lenkemerknader med handlings- og destinasjonsinformasjon gjennom
LinkAnnotation,LinkAnnotationCountogTPdfView.LinkAnnotationAtPos- Trygg håndtering av lenkeklikk - TPdfView utløser
OnAnnotationLinkClick/OnWebLinkClickfør automatisk goto / URI-håndtering, med launch-handlinger deaktivert som standard. Klikkdeteksjon for lenker kjøres bare når gesten er et klikk og ikke et drag, ved bruk av et ferskt MouseDown-anker, slik at panorering fortsatt flyter gjennom den eksisterende rullebanen uendret
Gjengivelse
- Høykvalitetsgjengivelse - Render sider til enhetskontekst, bitmap eller flis gjennom
RenderPage/RenderTile, med zero-copy direkte skriving til mål-DIB-bufferen- Avbrytbar progressiv rendering -
RenderPageProgressivedriver PDFiums progressive løkke og spør enIPdfCancellationTokenmellom iterasjonene, og returnererprsDone,prsCancelledellerprsFailed. Bitmappen beholder det delvise arbeidet som er gjort når den avbrytes- Parallell sidegjengivelse -
RenderPagesParallelfanger gjeldende dokument én gang, gir hver worker en uavhengig innlastet PDFium-modul og -dokument, bevarer forespørselsrekkefølgen og begrenser beholdt utdataminne per side og samlet- Sikker innholdsmaskering -
SaveAsRedactedanvender/Redact-rektangler på et isolert øyeblikksbilde, fjerner konservativt skjærende toppnivå-sideobjekter og overlappende merknader, maler ugjennomsiktige erstatninger, fjerner innebygde vedlegg og skriver et sanitert resultat med én revisjon uten å endre det innlastede dokumentet- Renderingsvalg - LCD-tekstoptimalisering (
reLcd), merknader (reAnnotations), gråskala og flagg for utskriftsmodus- Skia-kroker - Lavnivåbindinger for
FPDF_RenderPageSkiaogFPDF_FFLDrawSkiaer tilgjengelige når kallere leverer en ekstern SkCanvas (avhengig av eksportene i de medfølgende DLL-ene)- Valg av utskriftsmodus - Sett EMF-, tekst-only-, PostScript-, pass-through-, image-mask- og Type 42-utskriftsmoduser for PDFium via den globale
SetPdfPrintMode-funksjonen medTPdfPrintMode- Asynkront overlegg - TPdfView kan vise et valgfritt lasteoverlegg mens worker-eid av applikasjonen renderer med separate TPdf-instanser
- Siderotering - Støtte for rotasjon på 0, 90, 180 og 270 grader (
ro0,ro90,ro180,ro270)- Deteksjon av gjennomsiktighet -
Transparent-egenskapen rapporterer om noe objekt på gjeldende side har gjennomsiktighet, inkludert blandingsmoduser og delvis alfa
Visning (TPdfView)
- Visningsmoduser -
dmSingleContinuous,dmTwoPageContinuousogdmTwoPageContinuousWithCover(forsiden står alene, før visningen fortsetter som tosidige oppslag). Enhetsnivå-hjelperenComputeSpreadPageseksponerer oppslagsmatematikken uten å instansiere en viser- Fit-modus -
FitModevelger hvordan siden plasseres i visningsområdet:pfmNone(manuell zoom),pfmActualSize(100 %),pfmFitPage(hele siden passer i visningsområdet),pfmFitWidth(sidebredden matcher visningsområdets bredde) ogpfmFitHeight(sidehøyden matcher visningsområdets høyde). Aktiv fit-modus brukes automatisk på nytt ved Resize og når gjeldende side endres; direkte innstilling av Zoom avbryter aktiv fit-modus (FitMode går tilbake tilpfmNone), i tråd med konvensjonen fra standard PDF-visere- Zoomkontroll - Variabel zoom med per-side-hjelperne
PageZoom,PageWidthZoom,PageHeightZoomogActualSizeZoom- Sidefarge -
PageColorkobler bakgrunnen til den rendrerte PDF-siden fra den omkringliggende kontrollensColor. Standard erclWhite, så PDF-sider rendres som papirhvite uansett tema i vertsapplikasjonen. Visere i mørk modus kan holde rulleområdet mørkt og likevel la selve PDF-siden være hvit, eller en hvilken som helst farge applikasjonen velger- Interaktiv tekstmarkering - Sluttbrukeren kan dra for å markere tekst på PDF-sider, med hit-test som automatisk veksler mellom markering og panorering: klikk på et tegn starter en markeringsdrag, klikk på tomrom panorerer. Dobbeltklikk velger ordet, trippelklikk velger linjen,
Ctrl+Avelger siden (begge sider i oppslagsmodus),Ctrl+Ckopierer somCF_UNICODETEXT,Shift+arrowsutvider markeringen, hover over tekst veksler markøren tilcrIBeam, og dragging mot en viserkant ruller siden automatisk. Nye publiserteSelectionColorogOnSelectionChange; nye offentligeHasSelection,SelectedText,SelectionCharCount,ClearSelection,SelectAll,CopySelectionToClipboard. Oppslagsmoduser markerer på tvers av begge synlige sider med CR/LF-sammenføyning. En standard høyreklikk-Copy-meny kobles automatisk til når verten ikke har tildelt sin egenPopupMenu. Styrt av v1.17.0-flaggetAllowUserTextSelectionfor kioskverter- Koordinatmapping - Konverter mellom viserens enhetskoordinater og PDF-sidekoordinater med
DeviceToPage/PageToDevice, inkludert overloads som tar enTRectog returnerer enTPdfRectangle- Tekstmarkering og trefftesting - Slå opp tegn under viserpunkter med
CharacterIndexAtPosog tegn markeringfremhevinger viaPaintSelection- Mus & tastatur - Full støtte for inndataenheter med muse-drarulling, PgUp / PgDn / Ctrl+Home / Ctrl+End-snarveier og side navigering med hjulet opp / ned. Ctrl+hjul er reservert for applikasjonens zoom og hoppes over av navigasjonsbehandleren
- Låsing av brukerinndata -
AllowUserPageChangestyrer tastatursnarveier for sidebytte,ChangePageOnMouseScrollingstyrer hjulbaserte sidehopp, ogAllowUserTextSelectionstyrer muse-/tastaturinndata for tekstmarkering. Alle tre har standardverdien True; sett dem til False for å låse ned kiosker, forhåndsvisningsruter eller skrivebeskyttede innebygginger uten subklassing- Asynkront renderingsoverlegg -
AsyncRendering,LoadingTextogLoadingColortegner en liten "Loading..."-indikator over den rendrede siden, slik at applikasjoner som bruker egen worker for lange renderinger får et konsistent visuelt virkemiddel. Standardverdiene bevarer eksisterende oppførsel.TPdfserialiserer nå renderings- og side-loss-kall per instans; applikasjonen eier fortsatt worker-utsendelsen og må unngå å mutere et dokument mens en rendering pågår- Trygg håndtering av lenkeklikk -
LinkOptionser et publisert sett som styrer automatisk oppførsel for de fire PDF-lenkehandlingstypene:loAutoGoto(sidehopp),loAutoOpenURI(ShellExecute),loAutoLaunch(ShellExecute) ogloAutoEmbeddedGoto(reservert). Standard aktiverer bareloAutoGotoogloAutoOpenURI;loAutoLaunchogloAutoEmbeddedGotoforblir av, slik at et feilklikk ikke kan kjøre et vilkårlig program.OnAnnotationLinkClickogOnWebLinkClickutløses før noen automatisk handling og lar applikasjonen merke hendelsen som Handled eller videresende den- Skjemainteraksjon - Interaktiv skjemaredigering i viseren, pluss v1.23.0-hjelperne for markering / angre / gjør om
- Visuell stil -
PageShadowSize,PageShadowColorogPageBorderColormaler en valgfri skygge under siderammene og en én-piksel kant rundt den;SmoothScrollanimerer nå linje-/sidrullekommandoer i timerstyrte segmenter mens tommeldrag fortsatt er umiddelbart- Miniatyrbasert navigering -
TPdfThumbnailView(enhetFPdfThumbnail) renderer én sideminiatyr per rad i et rullbart sidepanel med hover- og merkingsfremheving pluss klikk-og-gå-navigering. Designet for å stå ved siden av en TPdfView. Egenskaper:CurrentPageIndex,ThumbnailWidth,ThumbnailHeight,TextColor,HoverColor,SelectionColor,BorderColor; hendelse:OnPageClick
Komprimering
- Automatisk komprimering - Når
Compressed-egenskapen er True (standard), sikres det at alle PDF-strømmer er FlateDecode-komprimerte ved lagring- Etterbehandling - Komprimeringsmotoren skanner lagrede PDF-data og komprimerer alle ukomprimerte strømmer med maksimal zlib-komprimering
- Gjenoppbygging av kryssreferanser - Bygger automatisk opp xref-tabellen på nytt når strømkomprimering endrer byteoffsets
- Null overhead - Hvis alle strømmer allerede er komprimerte, passerer dataene gjennom uten endring
Sikkerhet
- Passordstøtte - Åpne passordbeskyttede PDF-dokumenter
- Tillatelser - Les dokument- og brukertillatelser;
SecurityAudit-demoen kombinerer tillatelser, vedlegg, dokument-JavaScript, URI / Launch-lenker, signaturer, XFA og V8-tilgjengelighet til en skrivebeskyttet risikoflate med lagring av TXT / JSON-rapport og TXT-kopieringshandlinger- Begrenset DER-verktøykasse -
FPdfAsn1koder lave og høye tagnumre, typede verdier, sorterte SET OF-samlinger og kanoniske tids- eller strengformer; dens zero-copy leservinduer, typede dekodere og ressursbegrensede validator støtter arbeidsflyter for CMS, PAdES, sertifikater og tidsstempler- Signaturspesifikk langtidsvalidering -
TPadesDssOptions.Vrisskriver hash-nøkkelbaserte indirekte VRI-ordbøker mens delte sertifikat-, OCSP- og CRL-strømmer dedupliseres etter innholdshash, og PAdES B-LT- eller B-LTA-signering oppretter den nye signaturens VRI automatisk- Ekstern og avbrutt signering -
PreparePadesRemoteSignaturelagrer dokumentets SHA-256-digest, nøyaktig ByteRange, plassholderkoordinater og fingeravtrykket til den forberedte PDF-en for HSM- eller skysignering, mensCompletePadesRemoteSignatureavviser endrede, gjenbrukte, for store eller digest-avvikende økter før utdata skrives- Analyse av signaturrevisjonspolicy -
AnalyzeSignatureRevisionsrekonstruerer revisjonskjeder for klassisk, hybrid og xref-strøm, anvender DocMDP og FieldMDP per signatur og feiler lukket ved misdannede, skygge-, komprimerte eller over-budsjett-endringer- Signaturprofiler uten flertydighet - PAdES-validering teller påkrevde nøkler bare på toppnivået i signaturordboken, avviser duplikater og inkonsistente Sig- eller DocTimeStamp-profiler, og krever at ByteRange ekskluderer nøyaktig det direkte heksadesimale Contents-tokenet
- Eksport av bevis ved flere signaturer -
BuildPadesEvidenceReportkorrelerer PDFium-fakta, CMS-policy, klarerings- og tidsstempelstatus, sertifikatssti-hasjer, DSS/VRI-dekning og revisjonsbeslutninger med begrenset JSON- og CSV-utdata- Fornyelse av arkivtidsstempler -
RenewPadesArchiveTimestamplegger til et RFC 3161 Document Time-stamp over den nøyaktige eksisterende signaturhistorikken, oppdaterer eventuelt hele DSS-en først og validerer den resulterende B-LTA-kjeden før utdata- Asynkron klareringsvalidering -
ValidatePadesTrustogValidatePadesTrustAsyncverifiserer frakoblede signaturer mot originale byter, signer- og TSA-kjeder, valgfritt online tilbakekallingsbevis og RFC 3161-tidsstempel tokener med trinnvis fremdrift, begrenset henting og kooperativ kansellering- Kvalifisert tillit -
TPdfEuropeanTrustedListtolker bare kallerenautentiserte ETSI-klareringslister, reautentiserer hurtigbufret XML, godtar oppdateringskilder som kalleren eier og leverer frakoblet evaluering av kvalifiserte tjenester gjennomQualifiedTrustEvaluator- Fjerning av sikkerhet - Lagre dokumenter med sikkerheten fjernet (når det er autorisert)
Utskrift
- Utskriftsmoduser - Velg mellom EMF-, tekst-only-, PostScript Level 2 / 3-, PostScript pass-through-, EMF image-mask- og Type 42-utskriftsmoduser gjennom den globale
SetPdfPrintMode-funksjonen- Viserinnstillinger - Synliggjør dokumentforfatterens intensjon gjennom
PrintCopies,PrintPageRanges(enbaserte sideområder),PrintScalingogPrintPaperHandling;SetPdfPrintPaperHandlingDevModemapper dupleks-hintet inn i WindowsDEVMODE.dmDuplex- N-up-utskrift -
PrintPreferences-demoene for Delphi, C++Builder og Lazarus viser N-up-arkkomposisjon (1 / 2 / 4 / 9 sider per ark) med filtrering av oddetall / partall, gråtone-rendering, valgfrie 1-piksel cellekanter, PDF-forfatterens utskriftsinnstillinger og dupleksintensjon mappet viaSetPdfPrintPaperHandlingDevMode
Medfølgende demoer
Demo\Delphi-,Demo\CBuilder- ogDemo\Lazarus-trærne leverer kjørbare eksempelprosjekter som bruker den faktiske API-flaten på tvers av alle tre IDE-familiene. Høydepunkter:
- PDFViewer / MultiPageViewer / SplitView - Ende-til-ende-bruk av TPdfView: last inn, naviger, zoom, roter, tosidige oppslag, omslagsbevisste layouter og PDF-sammenligning side om side i Delphi / C++Builder / Lazarus med synkroniserte kommandoer; viserdemoene fungerer også som praktiske hastighetstester for PDF-er på flere gigabyte, der dokumenter på 2.x GB kan nå en brukbar førstevisning nesten umiddelbart mens siderenderingen forblir responsiv
- ViewerInteractionLab - Fokuserte TPdfView-interaksjonseksempler for Delphi, C++Builder og Lazarus med visningsmoduser, fit-moduser, sidefarger, rotasjon, søkefremheving, tekstmarkering, forhåndsvisning av valgt tekst, utklippstavlehandlinger og DeviceToPage-koordinattilbakemelding
- SearchAndSelect - Fokuserte arbeidsflyteksempler for Delphi, Lazarus og C++Builder med listing av søkeresultater for alle sider, navigering forrige / neste treff, dobbeltklikk-hoppp til resultat,
HighlightSearchText, søk med match-case / hele ord,AllowUserTextSelection,SelectedText,SelectAll,CopySelectionToClipboard,ClearSelectionog oppslagsvisningsmoduser- PreflightReport - Gjenbrukbare
FPdfPreflightReport-objekter samler resultater for PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R og PDF/VT med status, alvorlighetsgrad Info / Warning / Error, oppslag, søk, filtrering, deterministisk aggregering, stabile SHA-256-fingeravtrykk, utdata som TXT / HTML / Markdown / JSON / CSV og automatiseringsformater SARIF 2.1.0 / JUnit XML / NDJSON / XML; demoer for Delphi, Lazarus og C++Builder pluss konsollarbeidsflyter gir forhåndsvisninger, batchruting, sammendrag, rapportvedlegg og CI-gating via exit-kode- ContentExtractionLab - Samlet arbeidsflyt for innholdsinventar i Delphi, Lazarus og C++Builder for dokumentmetadata, sidetekst, sideobjekter, bilder, vedlegg, lenker, merknader, bokmerker og font-/tegnmålinger med TXT / JSON-eksport, kategorivalg alle / ingen, lagring av kilde-PDF og rapportkopieringshandlinger
- WatermarkStamp - Gjenbrukbar Form XObject-arbeidsflyt for Delphi, Lazarus og C++Builder for sentrerte vannmerker, hjørnestempler og sidetallsetiketter på tvers av et flersidig mål-PDF
- CreatePDF - Bygg en flersidig PDF fra bunnen av med tekst, bilder, baner, tabeller og vannmerksammensetning; inkluderer et "European Text"-alternativ for å skrive aksentert tsjekkisk / fransk / tysk / spansk / portugisisk / polsk / tyrkisk tekst for verifisering av fontvalg og Unicode-håndtering
- ExtractText / ExtractImages / ContentExtractionLab - Lagre uttrukket tekst (inkludert utdata atskilt per side) eller innebygde bilder til disk; eller generer en flerkategori-innholdsinventartrapport i én gjennomgang
- FormFill - Les AcroForm-feltmetadata, skriv verdier, regenerer /AP-utseender og lagre enten det redigerbare eller det flattete resultatet
- FontProperties - Undersøk indekserte tegn-/fontmetadata gjennom både TPdf og TPdfView i Delphi, C++Builder og Lazarus
- MergePDF / SplitPDF - Slå sammen flere kilde-PDF-er (med valg av sideområde per fil, valgfri utdatasti, kjørelogg, avbryt-knapp og sammendrag av fullført fletting) eller del én PDF i utdatafiler per side
- PDFtoJpg / BatchExport - Ett-kjørings- eller batchbasert konvertering av flere filer fra PDF til JPG i Delphi, C++Builder og Lazarus, med samlet fremdrift per fil, gjeldende fremdrift per side, inndata for DPI / kvalitet / passord og en kooperativt avbrytbar batch drevet av
IPdfCancellationToken- StandardsLab - Arbeidsflyteksempler for Delphi, C++Builder og Lazarus for validering av PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R og PDF/VT, problemrapportering og standardorienterte lagringsutdata
- PrintPDF / PrintPreferences - Standard PDF-utskrift i Delphi, C++Builder og Lazarus med forhåndsvisning, sideområder, kopier, sortering, fremdrift og kansellering (PrintPDF), pluss N-up-arkkomposisjon i Delphi, C++Builder og Lazarus med oddetall / partall-filtrering og PDF-forfatterens utskriftsinnstillinger (PrintPreferences)
- SecurityAudit - Skrivebeskyttede risikoflate-eksempler for Delphi, C++Builder og Lazarus med tillatelser, vedlegg, JavaScript-handlinger, URI / Launch-lenker, nettlenker, signaturer, XFA-tilstand, V8 / XFA-hjelper-tilgjengelighet og TXT / JSON-auditrapporter
- Attachment - Opprett PDF-er, legg til / list / trekk ut / slett / lagre innebygde filvedlegg med visning av MIME subtype
- ImageToPDF - Batchkonvertering av bilder til én PDF i Delphi, C++Builder og Lazarus, ett bilde per side, med forhåndsvisning og fremdrift per bilde
Regresjonspakken for Delphi, C++Builder og Lazarus dekker 147 (Pas) / 123 (C++) tilfeller som deler de samme fixture-PDF-ene, slik at oppførselen forblir bytejustert på tvers av alle tre IDE-familiene
Plattformstøtte
- Delphi - Delphi XE5 (RAD Studio XE5) til Delphi 13.1 Florence (RAD Studio 13.1)
- C++Builder - C++Builder XE5 (RAD Studio XE5) til C++Builder 13.1 Florence
- Lazarus - Støtte for Free Pascal / Lazarus
- Win32 / Win64 - Både 32-bits og 64-bits Windows-plattformer