PDFium Delphi Component Docs

FPdfProduction unit

Alur kerja produksi terbatas untuk grafis, konten dokumen, paket interaktif, dan media tersemat

Exception and enumerations

DeclarationValues or purpose
EPdfProductionException yang dimunculkan untuk masukan produksi tidak valid, anggaran keamanan yang habis, operasi yang tidak didukung, dan output backend yang ditolak
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

Colour conversion declarations

DeclarationPublic fields or members
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

Font and SVG declarations

DeclarationPublic fields or members
TPdfGlyphInfoGlyphID: Cardinal, UnicodeValue: Cardinal, Width: Integer
TPdfGlyphInfosArray dinamis dari 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 dinamis dari TPdfSvgPathCommand

Styled replacement and XFA declarations

DeclarationPublic fields or members
TPdfStyledSpanPageIndex: Integer, ObjectIndex: Integer, CharacterStart: Integer, Text: WideString, StyleID: Integer
TPdfStyledSpansArray dinamis dari TPdfStyledSpan
TPdfRegexMatchStartIndex: Integer, Length: Integer, Replacement: WideString
TPdfRegexMatchesArray dinamis dari TPdfRegexMatch
TPdfStyledReplacementMode: TPdfReplacementMode, PageIndex: Integer, FirstObjectIndex: Integer, LastObjectIndex: Integer, FirstCharacter: Integer, CharacterCount: Integer, Replacement: WideString, StyleID: Integer, LastPageIndex: Integer
TPdfStyledReplacementsArray dinamis dari TPdfStyledReplacement
TPdfXfaBindingSomPath: string, Value: string
TPdfXfaBindingsArray dinamis dari TPdfXfaBinding

Barcode and Portfolio declarations

DeclarationPublic fields or members
TPdfBarcodeRectLeft: Double, Top: Double, Right: Double, Bottom: Double
TPdfBarcodeRectsArray dinamis dari TPdfBarcodeRect
TPdfBarcodeResultKind: TPdfBarcodeKind, Text: string, Bounds: TPdfBarcodeRect, Confidence: Double
TPdfBarcodeResultsArray dinamis dari TPdfBarcodeResult
TPdfPortfolioFieldName: string, DisplayName: string, FieldType: TPdfPortfolioFieldType, Order: Integer, Visible: Boolean, Editable: Boolean
TPdfPortfolioFieldsArray dinamis dari TPdfPortfolioField
TPdfPortfolioValueFieldName: string, Value: string
TPdfPortfolioValuesArray dinamis dari TPdfPortfolioValue
TPdfPortfolioItemFileName: string, Description: string, Values: TPdfPortfolioValues, EmbeddedData: TBytes
TPdfPortfolioItemsArray dinamis dari TPdfPortfolioItem
TPdfPortfolioFields: TPdfPortfolioFields, Items: TPdfPortfolioItems, SortField: string, SortAscending: Boolean

RichMedia declarations

DeclarationPublic fields
TPdfRichMediaAssetName: string, MimeType: string, Data: TBytes, IsExternal: Boolean, ActivationCondition: string, DefaultView: string
TPdfRichMediaAssetsArray dinamis dari TPdfRichMediaAsset
TPdfRichMediaExtractedName: string, MimeType: string, Size: Int64, Sha256: string
TPdfRichMediaExtractedArrayArray dinamis dari TPdfRichMediaExtracted

Backend interfaces

InterfaceMethodPurpose
IPdfColourTransformfunction Transform(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; out Target: TPdfColourBuffer): BooleanMengonversi buffer sumber tervalidasi ke ruang warna dan profil yang diminta
IPdfFontSubsetBackendfunction Subset(const FontProgram: TBytes; const Glyphs: TPdfGlyphInfos; out SubsetProgram: TBytes): BooleanMembangun program font yang berisi closure glyph yang diminta
IPdfRegexEnginefunction FindMatches(const Text, Pattern, Replacement: WideString; MaxMatches: Integer): TPdfRegexMatchesMengembalikan kecocokan ekspresi reguler yang terbatas beserta teks penggantinya
IPdfBarcodeProviderfunction Generate(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; out Rects: TPdfBarcodeRects): BooleanMenghasilkan persegi panjang modul barcode untuk simbologi yang didukung
function Recognise(const Pixels: TBytes; Width, Height, Stride: Integer; MaxResults: Integer): TPdfBarcodeResultsMengenali hasil barcode terbatas dari buffer piksel milik pemanggil

Default option factories

MemberPurpose
class function TPdfColourConversionOptions.Default: TPdfColourConversionOptionsMengembalikan bawaan konversi warna terbatas dengan pelestarian sumber diaktifkan
class function TPdfFontSubsetOptions.Default: TPdfFontSubsetOptionsMengembalikan batas font dan glyph terbatas dengan ambang penghematan minimum

Top-level routines

SignatureDescription
function ConvertPdfColourBuffer(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; Transform: IPdfColourTransform; const Options: TPdfColourConversionOptions; out Target: TPdfColourBuffer; out OutputIntent: TPdfOutputIntent; out Report: TPdfColourConversionReport): BooleanMenjalankan buffer warna melalui transformasi milik pemanggil dan membangun data OutputIntent yang sesuai sambil mempertahankan sumber saat gagal
function SubsetExistingPdfFont(const FontProgram: TBytes; const UsedGlyphs: TPdfGlyphInfos; Backend: IPdfFontSubsetBackend; const Options: TPdfFontSubsetOptions; out ResultProgram: TBytes; out GlyphClosure: TPdfGlyphInfos; out Report: TPdfFontSubsetReport): BooleanMembangun closure glyph unik yang terurut dan menerima subset hanya ketika valid dan lebih kecil
function ParsePdfSvgPath(const Data: string; MaxCommands: Integer = 100000): TPdfSvgPathCommandsMengurai perintah move, line, cubic, quadratic, dan close yang terbatas dengan dukungan koordinat relatif
function ExportPdfSvgPath(const Commands: TPdfSvgPathCommands): stringMelakukan serialisasi perintah path ke sintaks path SVG absolut
procedure TransformPdfSvgPath(var Commands: TPdfSvgPathCommands; A, B, C, D, E, F: Double)Menerapkan matriks afin ke setiap koordinat dalam path SVG yang telah diurai
function BuildStyledRegexReplacementPlan(const Spans: TPdfStyledSpans; const Pattern, Replacement: WideString; Engine: IPdfRegexEngine; MaxCharacters: Integer = 16 * 1024 * 1024; MaxMatches: Integer = 100000): TPdfStyledReplacementsMemetakan kembali kecocokan ekspresi reguler ke span objek halaman bergaya dan memilih penggantian native atau berbasis redaksi
function MergePdfXfaDatasets(const Packets: TXfaPacketList; const Bindings: TPdfXfaBindings; MaxPacketBytes: Integer = 32 * 1024 * 1024): TXfaPacketListMenggabungkan binding leaf SOM ter-escape sambil mempertahankan setiap paket XFA yang tidak tersentuh
function RewritePdfXfaPacketStreams(Source, Destination: TStream; const Packets: TXfaPacketList; MaxTotalPacketBytes: Int64 = 256 * 1024 * 1024): BooleanMenambahkan stream paket XFA yang diganti secara transaksional ke PDF tidak terenkripsi
function GeneratePdfBarcode(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; Provider: IPdfBarcodeProvider = nil): TPdfBarcodeRectsMenghasilkan vektor Code 128-B bawaan dan mendelegasikan simbologi dua dimensi ke provider
function RecognisePdfBarcodes(const Pixels: TBytes; Width, Height, Stride: Integer; Provider: IPdfBarcodeProvider; MaxResults: Integer = 256): TPdfBarcodeResultsMendelegasikan pengenalan barcode sambil menegakkan geometri gambar dan batas hasil
procedure ValidatePdfPortfolio(const Portfolio: TPdfPortfolio; MaxItems: Integer = 100000; MaxEmbeddedBytes: Int64 = 1024 * 1024 * 1024)Memvalidasi definisi bidang, nilai, jumlah item, dan anggaran muatan tersemat
procedure SortPdfPortfolio(var Portfolio: TPdfPortfolio)Membuat tampilan Collection deterministik menggunakan bidang dan arah urutan yang dikonfigurasi
function ExtractPdfRichMediaAssets(const Assets: TPdfRichMediaAssets; const OutputDirectory: string; MaxAssetBytes: Int64 = 256 * 1024 * 1024; MaxTotalBytes: Int64 = 1024 * 1024 * 1024): TPdfRichMediaExtractedArrayMenulis aset tersemat tanpa mengeksekusi konten, meresolusi referensi eksternal, atau mengizinkan pelarian direktori

Safety model

Semua API bervolume tinggi menegakkan batas yang terlihat pemanggil sebelum mengalokasikan atau menulis output

Codec platform, mesin warna, subsetter font, mesin ekspresi reguler, pustaka barcode matriks, dan pengenal berupa antarmuka eksplisit sehingga host dapat memilih backend yang telah diauditnya