function GetObjectRenderedStrokePattern(Index: Integer): TBitmap;
| Index | Integer. Índice de objeto de página de base cero en el rango 0 .. ObjectCount - 1 |
| Result | TBitmap. Un bitmap recién creado que el llamador posee y debe liberar, o nil cuando el objeto no traza con un patrón de tiling, falta la exportación nativa o el renderizado falla |
Un objeto de ruta cuyo espacio de color de trazo es /Pattern con un patrón PatternType 1 (tiling) pinta su contorno con una celda repetida en lugar de un color plano. Este método renderiza esa celda por separado mediante la exportación nativa FPDFPageObj_GetRenderedStrokePattern, de modo que el llamador puede inspeccionar, exportar o previsualizar el patrón sin renderizar la página entera
El lock de renderizado se mantiene durante la llamada nativa, así que la llamada es segura frente a renderizado concurrente sobre el mismo componente. El bitmap nativo se convierte y se destruye antes de retornar; el TBitmap resultante pertenece al llamador
La llamada exige que la página actual esté activa. Los objetos que no son rutas, las rutas trazadas con un color plano o un patrón de shading y los patrones de solo relleno devuelven nil en lugar de lanzar una excepción; use PageObjectInfo o PathInfo para averiguar el motivo
Los patrones de tiling con color (PaintType 1) se renderizan con sus propios colores; los patrones sin color (PaintType 2) se renderizan con el color de trazo que haya seleccionado el content stream
nil significa «no hay patrón» o «no hay exportación»
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;