function GetObjectRenderedStrokePattern(Index: Integer): TBitmap;
| Index | Integer. Indeks obiektu strony liczony od zera, w zakresie 0 .. ObjectCount - 1 |
| Result | TBitmap. Nowo utworzona bitmapa, której właścicielem jest wywołujący i którą musi zwolnić, albo nil, gdy obiekt nie rysuje się wzorem kafelkowym, natywny eksport jest niedostępny lub rendering się nie powiedzie |
Obiekt ścieżki, którego przestrzeń barw obrysu to /Pattern ze wzorem PatternType 1 (kafelkowym), maluje swój obrys powtarzaną komórką zamiast płaskim kolorem. Ta metoda renderuje tę komórkę samodzielnie przez natywny eksport FPDFPageObj_GetRenderedStrokePattern, dzięki czemu wzór można obejrzeć, wyeksportować czy przebadać bez renderowania całej strony
Podczas natywnego wywołania trzymana jest blokada renderowania, więc metoda jest bezpieczna względem równoległego renderowania na tym samym komponencie. Natywna bitmapa jest konwertowana i niszczona przed powrotem; powstały TBitmap należy do wywołującego
Wywołanie wymaga aktywnej bieżącej strony. Obiekty, które nie są ścieżkami, ścieżki rysowane płaskim kolorem albo wzorem cieniowania, a także wzory wypełniane bez obrysu — wszystkie dają nil zamiast wyjątku; skorzystaj z PageObjectInfo lub PathInfo, żeby poznać przyczynę
Kolorowe wzory kafelkowe (PaintType 1) renderują się własnymi kolorami; bezbarwne (PaintType 2) renderują się kolorem obrysu wybranym przez strumień zawartości
nil oznacza "brak wzoru", czy "brak eksportu"
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;