Interface IHPDFDecodedBitmapHandle

Fornece acesso imutável com contagem de referência ao armazenamento de imagem decodificada compartilhado pelo cache de imagem carregada, esperadores singleflight e renderizadores

Declaração

IHPDFDecodedBitmapHandle = interface
  function GetWidth: Integer;
  function GetHeight: Integer;
  function GetPixelFormat: TPixelFormat;
  function GetByteSize: Int64;
  function CreateBitmapCopy: TBitmap;
  procedure StretchDraw(DestinationDC: HDC;
    const Destination: TRect; StretchMode: Integer);
end;

Propriedade

A interface mantém o armazenamento decodificado vivo independentemente de despejo de cache, invalidação de cache e destruição de documento

A contagem de referência é segura para threads e o TBitmap mutável compartilhado nunca é exposto aos chamadores

Desenho e cópias

StretchDraw desenha do armazenamento compartilhado imutável sem materializar um bitmap de propriedade do chamador e serializa o acesso ao recurso GDI subjacente

CreateBitmapCopy retorna um TBitmap isolado de propriedade do chamador para APIs que exigem pixels mutáveis

APIs relacionadas

THotPDF.AcquireLoadedImageStream · THotPDF.AcquireLoadedImageRegionAtResolution · Sharded Loaded-Image Decode Cache