Interface IHPDFPageRenderBackend

IHPDFPageRenderBackend = interface
  ['{ACCC7AA4-30B5-4C7B-A4E4-3B9A7481030A}']
  function GetName: AnsiString;
  function GetCapabilities: THPDFPageRenderBackendCapabilities;
  function IsAvailable: boolean;
  function RenderPage(const Request: THPDFPageRenderBackendRequest;
    out Bitmap: TBitmap;
    out Diagnostics: THPDFRenderFallbackDiagnostics;
    out DiagnosticDroppedCount: Integer;
    out Type3Stats: THPDFType3GlyphCacheStats;
    out TransparencyStats: THPDFTransparencyGroupTileStats): boolean;
end;

Contrat pour les backends de rendu de page enfichables, comme les implémentations GDI et scanline SIMD ; GetName et GetCapabilities décrivent le backend et IsAvailable signale si ses prérequis d'exécution, par exemple le support des instructions CPU, sont présents

RenderPage effectue le rendu d'une page à partir d'une requête de backend ; un résultat False signifie que l'appelant doit basculer sur un autre backend, et les paramètres out transportent les diagnostics de repli plus les statistiques du cache de glyphes Type 3 et du tiling des groupes de transparence pour l'analyse de performances

Interface IHPDFPageRenderBackendFailureInfo, Sémantique de rendu avancée