PDFium Delphi Component Docs

PageObjectsSnapshot Propiedad

Componente: TPdf  ·  Unidad: PDFium
Devuelve la instantánea acotada almacenada en caché de cada objeto de una página como registros gestionados

Syntax

property PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshot; // read only

 

type TPdfPageObjectsSnapshot = record
  PageNumber: Integer;
  Width: Double;
  Height: Double;
  Status: TPdfPageObjectSnapshotStatus;
  Objects: TPdfPageObjectSnapshots;
end;

PageNumberInteger. Índice de página basado en uno dentro del documento cargado
StatusTPdfPageObjectSnapshotStatus. Bandera de finalización, recuentos de objetos visitados y banderas de presupuesto que se alcanzaron
ObjectsRegistros por objeto con tipo, límites, transformación, colores, matrices de guiones, segmentos de trazado y de recorte, marcas de contenido, metadatos de imagen y texto acotado

Description

El primer acceso a una página captura la instantánea con los presupuestos de TPdfPageObjectSnapshotOptions.Default. La página activa se lee a través de sus manejadores cargados, y cualquier otra página se carga y se cierra de forma transitoria sin cambiar PageNumber ni disparar OnPageChange

Cada acceso devuelve una copia profunda, de modo que cambiar matrices de guiones anidadas, parámetros de marcas, segmentos de trazado, trazados de recorte, filtros o cadenas no puede modificar los datos en caché ni el documento

Las instantáneas completadas se retienen en la caché acotada descrita por PageObjectSnapshotCacheCapacity y se miden contra CacheBudgetBytes, y PageComplexity reutiliza esta caché para tipos de objetos, recuentos de trazados, píxeles de imagen y transparencia

Remarks

Llamar sin un documento activo lanza EPdfError, y un PageNumber fuera del rango de uno a PageCount lanza EPdfError con el mensaje Incorrect page number

Use ReadPageObjectsSnapshot para presupuestos de captura personalizados o para omitir deliberadamente la caché

Example

Snapshot := Pdf.PageObjectsSnapshot[PageNumber];
for I := 0 to High(Snapshot.Objects) do
  if Snapshot.Objects[I].ObjectType = otImage then
    LogImageObject(I);

See Also

PageObjectSnapshotCacheCapacity, PageObjectSnapshotCacheCount, PageObjectSnapshots, PageObjectInfo, PageComplexity