PDFium Delphi Component Docs

Unidad FPdfProduction

Flujos de producción con límites definidos para gráficos, contenido de documentos, paquetes interactivos y medios incrustados

Excepción y enumeraciones

DeclaraciónValores o propósito
EPdfProductionExcepción generada por entrada de producción inválida, presupuestos de seguridad agotados, operaciones no admitidas y salida de backend rechazada
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

Declaraciones de conversión de color

El proveedor opcional LittleCMS implementa la interfaz de transformación de buffers, y FPdfDocumentColour la aplica a los operadores originales del documento y a los componentes de imagen, con informes explícitos de completitud

DeclaraciónCampos o miembros públicos
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

Declaraciones de fuentes y SVG

DeclaraciónCampos o miembros públicos
TPdfGlyphInfoGlyphID: Cardinal, UnicodeValue: Cardinal, Width: Integer
TPdfGlyphInfosArreglo dinámico de 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
TPdfSvgPathCommandsArreglo dinámico de TPdfSvgPathCommand

Declaraciones de reemplazo con estilo y XFA

DeclaraciónCampos o miembros públicos
TPdfStyledSpanPageIndex: Integer, ObjectIndex: Integer, CharacterStart: Integer, Text: WideString, StyleID: Integer
TPdfStyledSpansArreglo dinámico de TPdfStyledSpan
TPdfRegexMatchStartIndex: Integer, Length: Integer, Replacement: WideString
TPdfRegexMatchesArreglo dinámico de TPdfRegexMatch
TPdfStyledReplacementMode: TPdfReplacementMode, PageIndex: Integer, FirstObjectIndex: Integer, LastObjectIndex: Integer, FirstCharacter: Integer, CharacterCount: Integer, Replacement: WideString, StyleID: Integer, LastPageIndex: Integer
TPdfStyledReplacementsArreglo dinámico de TPdfStyledReplacement
TPdfXfaBindingSomPath: string, Value: string
TPdfXfaBindingsArreglo dinámico de TPdfXfaBinding

Declaraciones de códigos de barras y Portfolio

DeclaraciónCampos o miembros públicos
TPdfBarcodeRectLeft: Double, Top: Double, Right: Double, Bottom: Double
TPdfBarcodeRectsArreglo dinámico de TPdfBarcodeRect
TPdfBarcodeResultKind: TPdfBarcodeKind, Text: string, Bounds: TPdfBarcodeRect, Confidence: Double
TPdfBarcodeResultsArreglo dinámico de TPdfBarcodeResult
TPdfPortfolioFieldName: string, DisplayName: string, FieldType: TPdfPortfolioFieldType, Order: Integer, Visible: Boolean, Editable: Boolean
TPdfPortfolioFieldsArreglo dinámico de TPdfPortfolioField
TPdfPortfolioValueFieldName: string, Value: string
TPdfPortfolioValuesArreglo dinámico de TPdfPortfolioValue
TPdfPortfolioItemFileName: string, Description: string, Values: TPdfPortfolioValues, EmbeddedData: TBytes
TPdfPortfolioItemsArreglo dinámico de TPdfPortfolioItem
TPdfPortfolioFields: TPdfPortfolioFields, Items: TPdfPortfolioItems, SortField: string, SortAscending: Boolean

Declaraciones RichMedia

DeclaraciónCampos públicos
TPdfRichMediaAssetName: string, MimeType: string, Data: TBytes, IsExternal: Boolean, ActivationCondition: string, DefaultView: string
TPdfRichMediaAssetsArreglo dinámico de TPdfRichMediaAsset
TPdfRichMediaExtractedName: string, MimeType: string, Size: Int64, Sha256: string
TPdfRichMediaExtractedArrayArreglo dinámico de TPdfRichMediaExtracted

Interfaces de backends

InterfazMétodoPropósito
IPdfColourTransformfunction Transform(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; out Target: TPdfColourBuffer): BooleanConvierte un búfer de origen validado al espacio de color y perfil solicitados
IPdfFontSubsetBackendfunction Subset(const FontProgram: TBytes; const Glyphs: TPdfGlyphInfos; out SubsetProgram: TBytes): BooleanConstruye un programa de fuente que contiene la clausura de glifos solicitada
IPdfRegexEnginefunction FindMatches(const Text, Pattern, Replacement: WideString; MaxMatches: Integer): TPdfRegexMatchesDevuelve coincidencias acotadas de expresiones regulares y texto de reemplazo
IPdfBarcodeProviderfunction Generate(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; out Rects: TPdfBarcodeRects): BooleanGenera rectángulos de módulos de código de barras para una simbología admitida
function Recognise(const Pixels: TBytes; Width, Height, Stride: Integer; MaxResults: Integer): TPdfBarcodeResultsReconoce resultados acotados de códigos de barras a partir de un búfer de píxeles propiedad de quien llama

Funciones de creación de opciones predeterminadas

MiembroPropósito
class function TPdfColourConversionOptions.Default: TPdfColourConversionOptionsDevuelve valores predeterminados acotados de conversión de color con la preservación del origen habilitada
class function TPdfFontSubsetOptions.Default: TPdfFontSubsetOptionsDevuelve límites acotados de fuente y glifos con un umbral mínimo de ahorro

Rutinas de nivel superior

Firma de la funciónDescripción
function ConvertPdfColourBuffer(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; Transform: IPdfColourTransform; const Options: TPdfColourConversionOptions; out Target: TPdfColourBuffer; out OutputIntent: TPdfOutputIntent; out Report: TPdfColourConversionReport): BooleanEjecuta un búfer de color a través de una transformación de quien llama y construye datos OutputIntent coincidentes conservando el origen ante una falla
function SubsetExistingPdfFont(const FontProgram: TBytes; const UsedGlyphs: TPdfGlyphInfos; Backend: IPdfFontSubsetBackend; const Options: TPdfFontSubsetOptions; out ResultProgram: TBytes; out GlyphClosure: TPdfGlyphInfos; out Report: TPdfFontSubsetReport): BooleanConstruye una clausura ordenada de glifos únicos y acepta un subconjunto solo cuando es válido y más pequeño
function ParsePdfSvgPath(const Data: string; MaxCommands: Integer = 100000): TPdfSvgPathCommandsAnaliza comandos acotados de movimiento, línea, cúbicos, cuadráticos y cierre con soporte de coordenadas relativas
function ExportPdfSvgPath(const Commands: TPdfSvgPathCommands): stringSerializa comandos de ruta a sintaxis de ruta SVG absoluta
procedure TransformPdfSvgPath(var Commands: TPdfSvgPathCommands; A, B, C, D, E, F: Double)Aplica una matriz afín a cada coordenada de una ruta SVG analizada
function BuildStyledRegexReplacementPlan(const Spans: TPdfStyledSpans; const Pattern, Replacement: WideString; Engine: IPdfRegexEngine; MaxCharacters: Integer = 16 * 1024 * 1024; MaxMatches: Integer = 100000): TPdfStyledReplacementsMapea coincidencias de expresiones regulares de vuelta a rangos de objetos de página con estilo y selecciona reemplazo nativo o basado en redacción
function MergePdfXfaDatasets(const Packets: TXfaPacketList; const Bindings: TPdfXfaBindings; MaxPacketBytes: Integer = 32 * 1024 * 1024): TXfaPacketListFusiona enlaces escapados de hojas SOM conservando cada paquete XFA intacto
function RewritePdfXfaPacketStreams(Source, Destination: TStream; const Packets: TXfaPacketList; MaxTotalPacketBytes: Int64 = 256 * 1024 * 1024): BooleanAnexa flujos de paquetes XFA reemplazados transaccionalmente a un PDF sin cifrar
function GeneratePdfBarcode(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; Provider: IPdfBarcodeProvider = nil): TPdfBarcodeRectsGenera vectores Code 128-B integrados y delega las simbologías bidimensionales a un proveedor
function RecognisePdfBarcodes(const Pixels: TBytes; Width, Height, Stride: Integer; Provider: IPdfBarcodeProvider; MaxResults: Integer = 256): TPdfBarcodeResultsDelega el reconocimiento de códigos de barras aplicando la geometría de imagen y los límites de resultados
procedure ValidatePdfPortfolio(const Portfolio: TPdfPortfolio; MaxItems: Integer = 100000; MaxEmbeddedBytes: Int64 = 1024 * 1024 * 1024)Valida definiciones de campos, valores, conteos de elementos y presupuestos de cargas incorporadas
procedure SortPdfPortfolio(var Portfolio: TPdfPortfolio)Crea una vista Collection determinista usando el campo de ordenación y la dirección configurados
function ExtractPdfRichMediaAssets(const Assets: TPdfRichMediaAssets; const OutputDirectory: string; MaxAssetBytes: Int64 = 256 * 1024 * 1024; MaxTotalBytes: Int64 = 1024 * 1024 * 1024): TPdfRichMediaExtractedArrayEscribe recursos incorporados sin ejecutar contenido, resolver referencias externas ni permitir escapes de directorio

FPdfBarcodeZXing proporciona un proveedor opcional de generación y reconocimiento de códigos de barras

Modelo de seguridad

Todas las API de alto volumen aplican límites visibles para quien llama antes de asignar o escribir salida

Los códecs de plataforma, motores de color, generadores de subconjuntos de fuentes, motores de expresiones regulares, bibliotecas de códigos de barras matriciales y reconocedores son interfaces explícitas, de modo que los hosts pueden seleccionar su backend auditado

FPdfStyledEdit ejecuta estos planes contra una instantánea verificada del origen, con vista previa, reutilización de fuentes o fallback explícito, ajuste limitado y verificación transaccional de guardado y reapertura