IHPDFPageRenderBackend-Schnittstelle

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;

Vertrag für einsteckbare Seiten-Render-Backends wie die GDI- und SIMD-Scanline-Implementierungen; GetName und GetCapabilities beschreiben das Backend, und IsAvailable meldet, ob seine Laufzeitvoraussetzungen, etwa die CPU-Anweisungsunterstützung, erfüllt sind

RenderPage rendert eine Seite aus einer Backend-Anforderung; ein False-Ergebnis bedeutet, dass der Aufrufer auf ein anderes Backend zurückfallen sollte, und die out-Parameter tragen Fallback-Diagnosen sowie Statistiken zum Type-3-Glyphen-Cache und zum Kacheln der Transparenzgruppen für die Leistungsanalyse

IHPDFPageRenderBackendFailureInfo-Schnittstelle, Erweiterte Rendering-Semantik