IHPDFPageRenderBackend Interface

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;

Kontrakt for aftagelige side-render-backends såsom GDI- og SIMD-scanline-implementeringerne; GetName og GetCapabilities beskriver backend'et, og IsAvailable rapporterer, om dets kørselsforudsætninger, for eksempel CPU-instruktionsunderstøttelse, er til stede

RenderPage renderer én side ud fra en backend-anmodning; et False-resultat betyder, at kaldéren bør falde tilbage til et andet backend, og ud-parametrene bærer fallback-diagnostik samt Type 3-glyf-cache- og transparensgruppe-tiling-statistik til ydeevneanalyse

IHPDFPageRenderBackendFailureInfo Interface, Advanced Rendering Semantics