PDFium Delphi Component Docs

الوحدة FPdfProduction

مسارات عمل إنتاجية محدودة الحدود للرسوميات ومحتوى المستندات والحزم التفاعلية والوسائط المضمَّنة

الاستثناءات والتعدادات

التصريحالقيم أو الغرض
EPdfProductionاستثناء يُطلق عند وجود إدخال إنتاجي غير صالح أو استنفاد ميزانيات الأمان أو عمليات غير مدعومة أو مخرجات خلفية مرفوضة
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

تصريحات تحويل الألوان

ينفذ موفر LittleCMS الاختياري واجهة تحويل المخازن؛ تطبقها FPdfDocumentColour على معاملات المستند ومكونات الصور الأصلية مع تقارير اكتمال صريحة

التصريحالحقول أو الأعضاء العامة
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

تصريحات الخطوط و SVG

التصريحالحقول أو الأعضاء العامة
TPdfGlyphInfoGlyphID: Cardinal, UnicodeValue: Cardinal, Width: Integer
TPdfGlyphInfosمصفوفة ديناميكية من 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
TPdfSvgPathCommandsمصفوفة ديناميكية من TPdfSvgPathCommand

تصريحات الاستبدال المنسَّق و XFA

التصريحالحقول أو الأعضاء العامة
TPdfStyledSpanPageIndex: Integer, ObjectIndex: Integer, CharacterStart: Integer, Text: WideString, StyleID: Integer
TPdfStyledSpansمصفوفة ديناميكية من TPdfStyledSpan
TPdfRegexMatchStartIndex: Integer, Length: Integer, Replacement: WideString
TPdfRegexMatchesمصفوفة ديناميكية من TPdfRegexMatch
TPdfStyledReplacementMode: TPdfReplacementMode, PageIndex: Integer, FirstObjectIndex: Integer, LastObjectIndex: Integer, FirstCharacter: Integer, CharacterCount: Integer, Replacement: WideString, StyleID: Integer, LastPageIndex: Integer
TPdfStyledReplacementsمصفوفة ديناميكية من TPdfStyledReplacement
TPdfXfaBindingSomPath: string, Value: string
TPdfXfaBindingsمصفوفة ديناميكية من TPdfXfaBinding

تصريحات الباركود و Portfolio

التصريحالحقول أو الأعضاء العامة
TPdfBarcodeRectLeft: Double, Top: Double, Right: Double, Bottom: Double
TPdfBarcodeRectsمصفوفة ديناميكية من TPdfBarcodeRect
TPdfBarcodeResultKind: TPdfBarcodeKind, Text: string, Bounds: TPdfBarcodeRect, Confidence: Double
TPdfBarcodeResultsمصفوفة ديناميكية من TPdfBarcodeResult
TPdfPortfolioFieldName: string, DisplayName: string, FieldType: TPdfPortfolioFieldType, Order: Integer, Visible: Boolean, Editable: Boolean
TPdfPortfolioFieldsمصفوفة ديناميكية من TPdfPortfolioField
TPdfPortfolioValueFieldName: string, Value: string
TPdfPortfolioValuesمصفوفة ديناميكية من TPdfPortfolioValue
TPdfPortfolioItemFileName: string, Description: string, Values: TPdfPortfolioValues, EmbeddedData: TBytes
TPdfPortfolioItemsمصفوفة ديناميكية من TPdfPortfolioItem
TPdfPortfolioFields: TPdfPortfolioFields, Items: TPdfPortfolioItems, SortField: string, SortAscending: Boolean

تصريحات RichMedia

التصريحالحقول العامة
TPdfRichMediaAssetName: string, MimeType: string, Data: TBytes, IsExternal: Boolean, ActivationCondition: string, DefaultView: string
TPdfRichMediaAssetsمصفوفة ديناميكية من TPdfRichMediaAsset
TPdfRichMediaExtractedName: string, MimeType: string, Size: Int64, Sha256: string
TPdfRichMediaExtractedArrayمصفوفة ديناميكية من TPdfRichMediaExtracted

الواجهات الخلفية

الواجهةالطريقةالغرض
IPdfColourTransformfunction Transform(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; out Target: TPdfColourBuffer): Booleanيحوِّل مخزن مصدر تم التحقق منه إلى فضاء الألوان والملف التعريفي المطلوبَين
IPdfFontSubsetBackendfunction Subset(const FontProgram: TBytes; const Glyphs: TPdfGlyphInfos; out SubsetProgram: TBytes): Booleanيبني برنامج خط يحتوي على إغلاق المحارف الرسومية المطلوب
IPdfRegexEnginefunction FindMatches(const Text, Pattern, Replacement: WideString; MaxMatches: Integer): TPdfRegexMatchesيعيد مطابقات تعبيرات نمطية محدودة الحدود ونص الاستبدال
IPdfBarcodeProviderfunction Generate(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; out Rects: TPdfBarcodeRects): Booleanيولِّد مستطيلات وحدات الباركود لنظام رموز مدعوم
function Recognise(const Pixels: TBytes; Width, Height, Stride: Integer; MaxResults: Integer): TPdfBarcodeResultsيتعرَّف على نتائج باركود محدودة الحدود من مخزن بكسلات يملكه المستدعي

دوال إنشاء الخيارات الافتراضية

العضوالغرض
class function TPdfColourConversionOptions.Default: TPdfColourConversionOptionsيعيد قيمًا افتراضية محدودة الحدود لتحويل الألوان مع تمكين الحفاظ على المصدر
class function TPdfFontSubsetOptions.Default: TPdfFontSubsetOptionsيعيد حدودًا محدودة للخطوط والمحارف الرسومية مع عتبة حد أدنى للتوفير

الدوال على مستوى الوحدة

التوقيعالوصف
function ConvertPdfColourBuffer(const Source: TPdfColourBuffer; TargetSpace: TPdfColourSpace; const TargetProfile: TBytes; Transform: IPdfColourTransform; const Options: TPdfColourConversionOptions; out Target: TPdfColourBuffer; out OutputIntent: TPdfOutputIntent; out Report: TPdfColourConversionReport): Booleanيمرِّر مخزن ألوان مؤقتًا عبر تحويل يوفره المستدعي ويبني بيانات OutputIntent مطابقة مع الحفاظ على المصدر عند الفشل
function SubsetExistingPdfFont(const FontProgram: TBytes; const UsedGlyphs: TPdfGlyphInfos; Backend: IPdfFontSubsetBackend; const Options: TPdfFontSubsetOptions; out ResultProgram: TBytes; out GlyphClosure: TPdfGlyphInfos; out Report: TPdfFontSubsetReport): Booleanيبني إغلاقًا مرتَّبًا للمحارف الفريدة ولا يقبل المجموعة الفرعية إلا عندما تكون صالحة وأصغر حجمًا
function ParsePdfSvgPath(const Data: string; MaxCommands: Integer = 100000): TPdfSvgPathCommandsيحلِّل أوامر move و line و cubic و quadratic و close المحدودة الحدود مع دعم الإحداثيات النسبية
function ExportPdfSvgPath(const Commands: TPdfSvgPathCommands): stringيُسلسل أوامر المسار إلى صيغة مسار SVG بقيم مطلقة
procedure TransformPdfSvgPath(var Commands: TPdfSvgPathCommands; A, B, C, D, E, F: Double)يطبِّق مصفوفة تحويل خطي على كل إحداثي في مسار SVG محلَّل
function BuildStyledRegexReplacementPlan(const Spans: TPdfStyledSpans; const Pattern, Replacement: WideString; Engine: IPdfRegexEngine; MaxCharacters: Integer = 16 * 1024 * 1024; MaxMatches: Integer = 100000): TPdfStyledReplacementsيعيد تعيين مطابقات التعبيرات النمطية إلى نطاقات كائنات صفحة منسَّقة ويختار الاستبدال الأصلي أو الاستبدال القائم على التعتيم
function MergePdfXfaDatasets(const Packets: TXfaPacketList; const Bindings: TPdfXfaBindings; MaxPacketBytes: Integer = 32 * 1024 * 1024): TXfaPacketListيدمج روابط أوراق SOM المهرَّبة مع الحفاظ على كل حزمة XFA سليمة
function RewritePdfXfaPacketStreams(Source, Destination: TStream; const Packets: TXfaPacketList; MaxTotalPacketBytes: Int64 = 256 * 1024 * 1024): Booleanيُلحق تدفقات حزم XFA المستبدلة تعامليًا بملف PDF غير مشفَّر
function GeneratePdfBarcode(Kind: TPdfBarcodeKind; const Text: string; ModuleSize: Double; Provider: IPdfBarcodeProvider = nil): TPdfBarcodeRectsيولِّد متجهات Code 128-B المدمجة ويفوِّض الرموز ثنائية الأبعاد إلى مزوِّد
function RecognisePdfBarcodes(const Pixels: TBytes; Width, Height, Stride: Integer; Provider: IPdfBarcodeProvider; MaxResults: Integer = 256): TPdfBarcodeResultsيفوِّض التعرف على الباركود مع فرض هندسة الصورة وحدود النتائج
procedure ValidatePdfPortfolio(const Portfolio: TPdfPortfolio; MaxItems: Integer = 100000; MaxEmbeddedBytes: Int64 = 1024 * 1024 * 1024)يتحقق من تعريفات الحقول والقيم وأعداد العناصر وميزانيات الحمولات المضمَّنة
procedure SortPdfPortfolio(var Portfolio: TPdfPortfolio)ينشئ عرض Collection حتميًا باستخدام حقل الفرز والاتجاه المُعدَّين
function ExtractPdfRichMediaAssets(const Assets: TPdfRichMediaAssets; const OutputDirectory: string; MaxAssetBytes: Int64 = 256 * 1024 * 1024; MaxTotalBytes: Int64 = 1024 * 1024 * 1024): TPdfRichMediaExtractedArrayيكتب الأصول المضمَّنة دون تنفيذ المحتوى أو حل المراجع الخارجية أو السماح بالخروج من الدليل

توفر FPdfBarcodeZXing موفرًا اختياريًا لتوليد الباركود والتعرف عليه

نموذج السلامة

تفرض كل واجهات برمجة التطبيقات عالية الحجم حدودًا مرئية للمستدعي قبل تخصيص الإخراج أو كتابته

برمجيات الترميز الأساسية ومحركات الألوان ومقسِّمات الخطوط ومحركات التعبيرات النمطية ومكتبات باركود المصفوفة والمتعرِّفات كلها واجهات صريحة بحيث يستطيع المضيفون اختيار خلفيتهم المدقوقة

تنفذ FPdfStyledEdit المخططات على snapshot مصدر موثقة مع معاينة وإعادة استخدام الخط أو fallback صريح وضبط محدود وفحص الحفظ وإعادة الفتح داخل المعاملة