PDFium Delphi Component Docs

PdfLibraryConfigurationSupportError funkce

Jednotka: PDFium
Hlásí, proč nelze konfiguraci knihovny použít na daný PDFium build, nebo vrací prázdný řetězec, když to jde

Syntaxe

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

Parametry

ConfigurationTPdfLibraryConfiguration. Nastavení, která se mají zkontrolovat
SkiaBuildBoolean. True pro PDFium build s podporou Skia, který exportuje FPDF_RenderPageSkia
FontationsBuildBoolean. True pro PDFium build s font backendem Fontations

Návratová hodnota

string: prázdný řetězec, když je konfigurace podporovaná, jinak popis nepodporovaného nastavení

Popis

Nativní inicializace PDFium zastaví celý proces, jakmile dostane renderer nebo font backend, které daný build neobsahuje; žádnou chybu nevrací

LoadLibrary proto tuto kontrolu provádí po navázání exportů a před nativní inicializací: prpSkia vyžaduje Skia build a pfbpFontations build s Fontations. Když kontrola neprojde, LoadLibrary knihovnu zase uvolní, konfiguraci ponechá nezapečetěnou a vyhodí EPdfError, takže aplikace může zavolat ConfigurePdfLibrary s jiným nastavením a zkusit to znovu

Podpora Skia se pozná z exportu FPDF_RenderPageSkia. PDFium pro Fontations nic neexportuje, takže LoadLibrary hledá Rust font craty, které tento backend přilinkovává do souboru knihovny; soubor knihovny, který nelze přečíst, se bere jako bez Fontations

Přibalené pdfium.dll a pdfium.v8.dll jsou Skia buildy bez Fontations

Poznámky

Příklad

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

Viz také

ConfigurePdfLibrary, PdfNativeRendererType, PdfLibraryConfigurationSealed