Clase THPDFLoadedPageRenderSession
Retiene el estado de render de la página y un bitmap parcial vivo, de modo que una página cargada se pueda renderizar en varias llamadas acotadas
Declaración
THPDFLoadedPageRenderSession = class(TObject)
public
function ContinueRender(MaxMilliseconds: Cardinal = 0;
MaxObjects: Integer = 0): THPDFProgressiveRenderStatus;
function TakeBitmap: TBitmap;
property Bitmap: TBitmap read GetBitmap;
property ObjectsProcessed: Integer read GetObjectsProcessed;
property TotalObjects: Integer read GetTotalObjects;
property ProgressiveJPEGScansDecoded: Integer
read GetProgressiveJPEGScansDecoded;
property ProgressiveJPEGImagesDecoded: Integer
read GetProgressiveJPEGImagesDecoded;
property Status: THPDFProgressiveRenderStatus read GetStatus;
property IsRegionRender: Boolean read FIsRegionRender;
property RegionLeft: Single read FRegionLeft;
property RegionBottom: Single read FRegionBottom;
property RegionRight: Single read FRegionRight;
property RegionTop: Single read FRegionTop;
property RegionVisiblePaintObjects: Integer
read GetRegionVisiblePaintObjects;
property RegionCulledPaintObjects: Integer
read GetRegionCulledPaintObjects;
property OnProgress: THPDFProgressiveRenderProgressEvent
read FOnProgress write SetOnProgress;
property OnProgressiveJPEGScan: THPDFProgressiveJPEGScanEvent
read FOnProgressiveJPEGScan write SetOnProgressiveJPEGScan;
end;
Unidad
HPDFDoc
Valores de estado
prsReadysignifica que la página está inicializada y que no se ejecutó ningún operador de contenidoprsPausedsignifica que el budget se agotó antes de completar todos los operadoresprsCompletedsignifica que el bitmap completo de la página está disponibleprsCancelledsignifica que el callback o el token detuvo la sesión en un límite de operador
Notas de uso
- Cualquiera de los dos budgets puede ser cero para trabajo ilimitado, mientras que ambos en cero ejecutan hasta un estado terminal en una sola llamada
Bitmapsigue siendo propiedad de la sesión y está pensado para acceso de vista previa de solo lecturaTakeBitmapsolo es válido en un estado terminal y transfiere la propiedad a quien llamaProgressiveJPEGScansDecodedyProgressiveJPEGImagesDecodedcuentan el trabajo incremental de imágenes exitoso, mientras queOnProgressiveJPEGScanpuede cancelar después de un scan visibleIsRegionRenderidentifica sesiones de ROI; las propiedades de región conservan los bounds solicitados en user space y los contadores de visibles y cullados describen la selección de pintado del display list- La instancia cargada de
THotPDFy el token de cancelación deben seguir vivos hasta que la sesión se libere