PDFium Delphi Component Docs

GetImageObjectRenderedBitmap metodă

Component: TPdf  ·  Unit: PDFium
Randează un singur obiect de pagină de tip imagine și returnează pixelii decodați ca bitmap aparținând apelantului

Syntax

function GetImageObjectRenderedBitmap(Index: Integer): TBitmap;

IndexInteger. Index de la zero al unui obiect de pagină de tip imagine, în intervalul 0 .. ObjectCount - 1. Un obiect de alt tip ridică un EPdfError (Image object required)
ResultTBitmap. Un bitmap creat proaspăt, pe care apelantul îl deține și trebuie să îl elibereze, sau nil când apelul nativ nu produce niciun bitmap

Description

Randează doar acel obiect imagine prin randatorul nativ (FPDFImageObj_GetRenderedBitmap), cu matricea, spațiul de culori și măștile sale curente aplicate — rezultatul arată imaginea așa cum o arată pagina, inclusiv măștile soft, cheile de șablon și conversiile de culori, pe care eșantioanele brute disponibile prin Image nu le poartă

Blocajul de randare este deținut pe durata apelului nativ, deci operația este sigură față de randarea concurentă pe aceeași componentă. Bitmapul nativ este convertit și distrus înainte de returnare; TBitmap-ul rezultat aparține apelantului

Apelul cere ca pagina curentă să fie activă, obiectul de la Index să fie de tip otImage (verificați ObjectType) și un build PDFium care exportă punctul de intrare de randare per imagine; în caz contrar este ridicat un EPdfError (Rendered image object bitmaps are not available)

Un rezultat nil nu este o condiție de abandon: când apelul nativ nu produce niciun bitmap, apelantul poate căde pe decuparea unei randări complete de pagină, folosind limitele din ObjectBounds

Remarks

Example

var
  Bmp: TBitmap;
begin
  if Pdf1.ObjectType[7] = otImage then
  begin
    Bmp := Pdf1.GetImageObjectRenderedBitmap(7);
    if Bmp <> nil then
      try
        Image1.Picture.Bitmap.Assign(Bmp);
        // use Bmp for export, comparison or recognition
      finally
        Bmp.Free;
      end;
  end;
end;

See Also

GetTextObjectRenderedBitmap, ObjectBitmap, ObjectType, ObjectBounds, ImageInfo