PDFium Delphi Component Docs

PdfLibraryConfigurationSupportError الدالة

الوحدة: PDFium
تُبلِّغ عن سبب تعذُّر تطبيق إعدادات تهيئة على بنية PDFium معيَّنة، أو تعيد سلسلة فارغة عندما يمكن تطبيقها

الصياغة

function PdfLibraryConfigurationSupportError(const Configuration: TPdfLibraryConfiguration; SkiaBuild, FontationsBuild: Boolean): string;

المعاملات

ConfigurationTPdfLibraryConfiguration. الإعدادات المراد فحصها
SkiaBuildBoolean. القيمة True لبنية PDFium تدعم Skia، أي أنها تُصدِّر FPDF_RenderPageSkia
FontationsBuildBoolean. القيمة True لبنية PDFium بخلفية خطوط Fontations

قيمة الإرجاع

string: سلسلة فارغة عندما تكون الإعدادات مدعومة، وإلا فوصف للإعداد غير المدعوم

الوصف

توقف التهيئة الأصلية في PDFium العمليةَ بأكملها عندما تتلقى renderer أو خلفية خطوط لا تحويها البنية؛ فهي لا تعيد خطأ

لهذا ينفّذ LoadLibrary هذا الفحص بعد ربط الـ exports وقبل التهيئة الأصلية: prpSkia يستلزم بنية بـ Skia، و pfbpFontations يستلزم بنية بـ Fontations. وعندما يفشل الفحص يفرّغ LoadLibrary المكتبة، ويترك الإعدادات غير مختومة، ويرفع EPdfError، فيستطيع التطبيق بعدها استدعاء ConfigurePdfLibrary بإعدادات أخرى وإعادة المحاولة

يُكتشَف دعم Skia من الـ export باسم FPDF_RenderPageSkia. أما Fontations فلا تُصدِّر PDFium له أي شيء، فيبحث LoadLibrary عن crates خطوط Rust التي تربطها هذه الخلفية داخل ملف المكتبة؛ وملف المكتبة غير القابل للقراءة يُعامَل كأنه لا يدعمها

مكتبتا pdfium.dll و pdfium.v8.dll المضمَّنتان بنيتان بـ Skia من دون Fontations

ملاحظات

مثال

Config := GetPdfLibraryConfiguration;
Config.Renderer := prpSkia;
ConfigurePdfLibrary(Config);
try
  LoadLibrary;
except
  on E: EPdfError do
  begin
    Config.Renderer := prpDefault;
    ConfigurePdfLibrary(Config);
    LoadLibrary;
  end;
end;

انظر أيضًا

ConfigurePdfLibrary, PdfNativeRendererType, PdfLibraryConfigurationSealed