function GetObjectRenderedStrokePattern(Index: Integer): TBitmap;
| Index | Integer. Indice basato su zero dell'oggetto di pagina nell'intervallo 0 .. ObjectCount - 1 |
| Result | TBitmap. Una bitmap appena creata, di proprietà del chiamante che deve liberarla, oppure nil quando l'oggetto non viene delineato con un pattern di tiling, l'esportazione nativa manca o il rendering fallisce |
Un oggetto tracciato il cui spazio colore di stroke è /Pattern con un pattern PatternType 1 (tiling) dipinge il proprio contorno con una cella ripetuta invece che con un colore piatto. Questo metodo renderizza quella cella da sola attraverso l'esportazione nativa FPDFPageObj_GetRenderedStrokePattern, così il chiamante può ispezionare, esportare o mostrare in anteprima il pattern senza renderizzare l'intera pagina
Il lock di rendering resta preso per tutta la chiamata nativa, quindi l'operazione è sicura anche con rendering concorrenti sullo stesso componente. La bitmap nativa viene convertita e distrutta prima del ritorno; la TBitmap risultante appartiene al chiamante
La chiamata richiede che la pagina corrente sia attiva. Oggetti che non sono tracciati, tracciati delineati con un colore piatto o con un pattern di shading e pattern di solo fill producono tutti nil invece di un'eccezione; usare PageObjectInfo o PathInfo per capirne il motivo
I pattern di tiling colorati (PaintType 1) si renderizzano con i propri colori; i pattern non colorati (PaintType 2) si renderizzano con il colore di stroke selezionato dal content stream
nil significa "nessun pattern" oppure "esportazione assente"
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;