PDFium Delphi Component Docs

GetObjectRenderedStrokePattern metoda

Komponenta: TPdf  ·  Jednotka: PDFium
Rasterizuje tiling pattern, jímž se objekt stránky obtahuje, a vrátí ho jako bitmapu ve vlastnictví volajícího

Syntaxe

function GetObjectRenderedStrokePattern(Index: Integer): TBitmap;

IndexInteger. Index objektu stránky počítaný od nuly, v rozsahu 0 .. ObjectCount - 1
ResultTBitmap. Nově vytvořená bitmapa, kterou vlastní volající a musí ji uvolnit, nebo nil, když se objekt neobtahuje tiling patternem, chybí nativní export, nebo se vykreslení nepovede

Popis

Objekt cesty, jehož barevný prostor tahu je /Pattern s patternem PatternType 1 (tiling), kreslí svůj obrys opakovanou dlaždicí místo plné barvy. Tato metoda vykreslí tu dlaždici samostatně přes nativní export FPDFPageObj_GetRenderedStrokePattern, takže volající může pattern prozkoumat, exportovat nebo si ho zobrazit v náhledu, aniž by renderoval celou stránku

Render zámek se na dobu nativního volání drží, takže volání je bezpečné vůči souběžnému vykreslování na téže komponentě. Nativní bitmapa se před návratem zkonvertuje a zničí; výsledný TBitmap patří volajícímu

Volání vyžaduje aktivní aktuální stránku. Objekty, které nejsou cesty, cesty obtahované obyčejnou barvou nebo shading patternem i patterny jen pro výplň všechny vrací nil místo výjimky; proč tomu tak je, zjistíte přes PageObjectInfo nebo PathInfo

Barevné tiling patterny (PaintType 1) se vykreslí vlastními barvami; nebarevné patterny (PaintType 2) použijí barvu tahu, kterou naposled vybral content stream

Poznámky

Příklad

var
  I: Integer;
  Bmp: TBitmap;
begin
  for I := 0 to Pdf1.ObjectCount - 1 do
  begin
    Bmp := Pdf1.GetObjectRenderedStrokePattern(I);
    if Bmp <> nil then
      try
        Bmp.SaveToFile(Format('stroke-pattern-%d.bmp', [I]));
      finally
        Bmp.Free;
      end;
  end;
end;

Viz také

GetImageObjectRenderedBitmap, GetTextObjectRenderedBitmap, PathInfo, StrokePatternRenderingFeaturesAvailable