PDFium Delphi Component Docs

Unità FPdfProduction

Flussi di lavoro di produzione delimitati per grafica, contenuto documentale, pacchetti interattivi e media incorporati

Eccezione ed enumerazioni

DichiarazioneValori o scopo
EPdfProductionEccezione generata per input di produzione non valido, budget di sicurezza esauriti, operazioni non supportate e output del backend rifiutato
TPdfColourSpacepcsDeviceGray, pcsDeviceRGB, pcsDeviceCMYK, pcsICCBased, pcsSeparation, pcsDeviceN
TPdfSvgPathCommandKindspcMoveTo, spcLineTo, spcCubicTo, spcQuadraticTo, spcClosePath
TPdfReplacementModeprmNativeTextObject, prmRedactAndRelayout
TPdfBarcodeKindpbkCode128, pbkQr, pbkDataMatrix, pbkPdf417
TPdfPortfolioFieldTypeppftText, ppftNumber, ppftDate, ppftFileName, ppftDescription, ppftSize, ppftModDate, ppftCreationDate

Dichiarazioni di conversione cromatica

Il provider LittleCMS opzionale implementa l'interfaccia di trasformazione dei buffer e FPdfDocumentColour la applica agli operatori originali del documento e ai componenti immagine con report espliciti di completezza

DichiarazioneCampi o membri pubblici
TPdfColourBufferSpace: TPdfColourSpace, Components: Integer, BitsPerComponent: Integer, Samples: TBytes, IccProfile: TBytes
TPdfOutputIntentIdentifier: string, RegistryName: string, Info: string, Components: Integer, IccProfile: TBytes
TPdfColourConversionOptionsMaxInputBytes: Integer, MaxOutputBytes: Integer, PreserveOnFailure: Boolean, class function Default: TPdfColourConversionOptions
TPdfColourConversionReportConverted: Boolean, PreservedOriginal: Boolean, InputBytes: Integer, OutputBytes: Integer, ErrorMessage: string

Dichiarazioni per font e SVG

DichiarazioneCampi o membri pubblici
TPdfGlyphInfoGlyphID: Cardinal, UnicodeValue: Cardinal, Width: Integer
TPdfGlyphInfosArray dinamico di TPdfGlyphInfo
TPdfFontSubsetOptionsMaxFontBytes: Integer, MaxGlyphs: Integer, MinimumSavingPercent: Integer, class function Default: TPdfFontSubsetOptions
TPdfFontSubsetReportApplied: Boolean, PreservedOriginal: Boolean, GlyphCount: Integer, OriginalBytes: Integer, SubsetBytes: Integer, ErrorMessage: string
TPdfSvgPathCommandKind: TPdfSvgPathCommandKind, Values: array[0..5] of Double
TPdfSvgPathCommandsArray dinamico di TPdfSvgPathCommand

Dichiarazioni per sostituzione con stile e XFA

DichiarazioneCampi o membri pubblici
TPdfStyledSpanPageIndex: Integer, ObjectIndex: Integer, CharacterStart: Integer, Text: WideString, StyleID: Integer
TPdfStyledSpansArray dinamico di TPdfStyledSpan
TPdfRegexMatchStartIndex: Integer, Length: Integer, Replacement: WideString
TPdfRegexMatchesArray dinamico di TPdfRegexMatch
TPdfStyledReplacementMode: TPdfReplacementMode, PageIndex: Integer, FirstObjectIndex: Integer, LastObjectIndex: Integer, FirstCharacter: Integer, CharacterCount: Integer, Replacement: WideString, StyleID: Integer, LastPageIndex: Integer
TPdfStyledReplacementsArray dinamico di TPdfStyledReplacement
TPdfXfaBindingSomPath: string, Value: string
TPdfXfaBindingsArray dinamico di TPdfXfaBinding

Dichiarazioni per codici a barre e Portfolio

DichiarazioneCampi o membri pubblici
TPdfBarcodeRectLeft: Double, Top: Double, Right: Double, Bottom: Double
TPdfBarcodeRectsArray dinamico di TPdfBarcodeRect
TPdfBarcodeResultKind: TPdfBarcodeKind, Text: string, Bounds: TPdfBarcodeRect, Confidence: Double
TPdfBarcodeResultsArray dinamico di TPdfBarcodeResult
TPdfPortfolioFieldName: string, DisplayName: string, FieldType: TPdfPortfolioFieldType, Order: Integer, Visible: Boolean, Editable: Boolean
TPdfPortfolioFieldsArray dinamico di TPdfPortfolioField
TPdfPortfolioValueFieldName: string, Value: string
TPdfPortfolioValuesArray dinamico di TPdfPortfolioValue
TPdfPortfolioItemFileName: string, Description: string, Values: TPdfPortfolioValues, EmbeddedData: TBytes
TPdfPortfolioItemsArray dinamico di TPdfPortfolioItem
TPdfPortfolioFields: TPdfPortfolioFields, Items: TPdfPortfolioItems, SortField: string, SortAscending: Boolean

Dichiarazioni RichMedia

DichiarazioneCampi pubblici
TPdfRichMediaAssetName: string, MimeType: string, Data: TBytes, IsExternal: Boolean, ActivationCondition: string, DefaultView: string
TPdfRichMediaAssetsArray dinamico di TPdfRichMediaAsset
TPdfRichMediaExtractedName: string, MimeType: string, Size: Int64, Sha256: string
TPdfRichMediaExtractedArrayArray dinamico di TPdfRichMediaExtracted

Interfacce backend

InterfacciaMetodoScopo
IPdfColourTransformfunction Transform(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; out Target: TPdfColourBuffer): BooleanConverte un buffer sorgente validato nello spazio colore e nel profilo richiesti
IPdfFontSubsetBackendfunction Subset(const FontProgram: TBytes; const Glyphs: TPdfGlyphInfos; out SubsetProgram: TBytes): BooleanCostruisce un programma font contenente la chiusura richiesta dei glifi
IPdfRegexEnginefunction FindMatches(const Text, Pattern, Replacement: WideString; MaxMatches: Integer): TPdfRegexMatchesRestituisce corrispondenze di espressioni regolari delimitate e testo di sostituzione
IPdfBarcodeProviderfunction Generate(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; out Rects: TPdfBarcodeRects): BooleanGenera i rettangoli dei moduli del codice a barre per una simbologia supportata
function Recognise(const Pixels: TBytes; Width, Height, Stride: Integer; MaxResults: Integer): TPdfBarcodeResultsRiconosce risultati di codici a barre delimitati da un buffer di pixel di proprietà del chiamante

Metodi factory per le opzioni predefinite

MembroScopo
class function TPdfColourConversionOptions.Default: TPdfColourConversionOptionsRestituisce le impostazioni predefinite delimitate di conversione cromatica con la conservazione della sorgente abilitata
class function TPdfFontSubsetOptions.Default: TPdfFontSubsetOptionsRestituisce limiti delimitati di font e glifi con una soglia minima di risparmio

Routine di primo livello

FirmaDescrizione
function ConvertPdfColourBuffer(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; Transform: IPdfColourTransform; const Options: TPdfColourConversionOptions; out Target: TPdfColourBuffer; out OutputIntent: TPdfOutputIntent; out Report: TPdfColourConversionReport): BooleanElabora un buffer colore attraverso una trasformazione fornita dal chiamante e costruisce i dati OutputIntent corrispondenti preservando la sorgente in caso di errore
function SubsetExistingPdfFont(const FontProgram: TBytes; const UsedGlyphs: TPdfGlyphInfos; Backend: IPdfFontSubsetBackend; const Options: TPdfFontSubsetOptions; out ResultProgram: TBytes; out GlyphClosure: TPdfGlyphInfos; out Report: TPdfFontSubsetReport): BooleanCostruisce una chiusura ordinata e senza duplicati dei glifi e accetta un subset solo quando è valido e più piccolo
function ParsePdfSvgPath(const Data: string; MaxCommands: Integer = 100000): TPdfSvgPathCommandsAnalizza comandi move, line, cubic, quadratic e close delimitati con supporto delle coordinate relative
function ExportPdfSvgPath(const Commands: TPdfSvgPathCommands): stringSerializza i comandi di percorso nella sintassi di percorso SVG assoluta
procedure TransformPdfSvgPath(var Commands: TPdfSvgPathCommands; A, B, C, D, E, F: Double)Applica una matrice affine a ogni coordinata di un percorso SVG analizzato
function BuildStyledRegexReplacementPlan(const Spans: TPdfStyledSpans; const Pattern, Replacement: WideString; Engine: IPdfRegexEngine; MaxCharacters: Integer = 16 * 1024 * 1024; MaxMatches: Integer = 100000): TPdfStyledReplacementsRiporta le corrispondenze di espressioni regolari sugli span di oggetti di pagina con stile e seleziona la sostituzione nativa o basata su redazione
function MergePdfXfaDatasets(const Packets: TXfaPacketList; const Bindings: TPdfXfaBindings; MaxPacketBytes: Integer = 32 * 1024 * 1024): TXfaPacketListUnisce binding di foglia SOM con escape preservando ogni pacchetto XFA non toccato
function RewritePdfXfaPacketStreams(Source, Destination: TStream; const Packets: TXfaPacketList; MaxTotalPacketBytes: Int64 = 256 * 1024 * 1024): BooleanAccoda con transazionalità pacchetti XFA sostituiti a un PDF non cifrato
function GeneratePdfBarcode(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; Provider: IPdfBarcodeProvider = nil): TPdfBarcodeRectsGenera vettori Code 128-B integrati e delega le simbologie bidimensionali a un provider
function RecognisePdfBarcodes(const Pixels: TBytes; Width, Height, Stride: Integer; Provider: IPdfBarcodeProvider; MaxResults: Integer = 256): TPdfBarcodeResultsDelega il riconoscimento dei codici a barre applicando vincoli di geometria dell'immagine e limiti sui risultati
procedure ValidatePdfPortfolio(const Portfolio: TPdfPortfolio; MaxItems: Integer = 100000; MaxEmbeddedBytes: Int64 = 1024 * 1024 * 1024)Valida definizioni di campi, valori, conteggi di elementi e budget dei payload incorporati
procedure SortPdfPortfolio(var Portfolio: TPdfPortfolio)Crea una vista Collection deterministica usando il campo e la direzione di ordinamento configurati
function ExtractPdfRichMediaAssets(const Assets: TPdfRichMediaAssets; const OutputDirectory: string; MaxAssetBytes: Int64 = 256 * 1024 * 1024; MaxTotalBytes: Int64 = 1024 * 1024 * 1024): TPdfRichMediaExtractedArrayScrive gli asset incorporati senza eseguire contenuto, risolvere riferimenti esterni o consentire fughe di directory

FPdfBarcodeZXing fornisce un provider opzionale di generazione e riconoscimento di codici a barre

Modello di sicurezza

Tutte le API ad alto volume applicano limiti visibili al chiamante prima di allocare o scrivere output

Codec di piattaforma, motori colore, subsetter di font, motori di espressioni regolari, librerie di codici a barre matriciali e riconoscitori sono interfacce esplicite così che gli host possano selezionare il proprio backend verificato

FPdfStyledEdit esegue questi piani su uno snapshot sorgente verificato, con anteprima, riuso dei font o fallback esplicito, adattamento limitato e verifica transazionale di salvataggio e riapertura