function PdfLibraryConfigurationSupportError(const Configuration: TPdfLibraryConfiguration; SkiaBuild, FontationsBuild: Boolean): string;
| Configuration | TPdfLibraryConfiguration. De indstillinger, der skal kontrolleres |
| SkiaBuild | Boolean. True for en PDFium-build med Skia-support, som eksporterer FPDF_RenderPageSkia |
| FontationsBuild | Boolean. True for en PDFium-build med Fontations som font-backend |
string: tom, når konfigurationen er understøttet, ellers en beskrivelse af den ikke-understøttede indstillingPDFiums native initialisering stopper hele processen, når den får en renderer eller font-backend, som buildet ikke indeholder; den returnerer ikke en fejl
LoadLibrary kører derfor dette tjek efter binding af exports og før den native initialisering: prpSkia kræver en Skia-build, og pfbpFontations kræver en Fontations-build. Fejler tjekket, afindlæser LoadLibrary biblioteket, lader konfigurationen være uforseglet og udløser EPdfError, så applikationen kan kalde ConfigurePdfLibrary med andre indstillinger og prøve igen
Skia-support detekteres ud fra exporten FPDF_RenderPageSkia. PDFium eksporterer intet for Fontations, så LoadLibrary leder efter de Rust-font-crates, som denne backend linker ind i biblioteksfilen; en biblioteksfil, der ikke kan læses, regnes som uden Fontations-support
De medfølgende pdfium.dll og pdfium.v8.dll er Skia-builds uden Fontations
prpDefault, prpAgg, pfbpDefault og pfbpFreeType accepteres af enhver buildConfig := GetPdfLibraryConfiguration;
Config.Renderer := prpSkia;
ConfigurePdfLibrary(Config);
try
LoadLibrary;
except
on E: EPdfError do
begin
Config.Renderer := prpDefault;
ConfigurePdfLibrary(Config);
LoadLibrary;
end;
end;