RenderPagesToFilesParallel

Rendering and printing

Description

Esegue il rendering di ogni pagina da StartPage a EndPage del PDF di origine in un file immagine per pagina, utilizzando un pool di thread TTask paralleli; ciascun thread crea la propria istanza TPDFlib sullo stesso file (TPDFlib non è thread-safe), esegue CoInitialize sul proprio thread per la sicurezza dell'apartment GDI+ ed esegue il rendering delle pagine richieste da un contatore atomico condiviso fino a quando l'intervallo non è esaurito

Questo si ridimensiona in modo quasi lineare con i core della CPU per l'output raster vincolato alla CPU (BMP/PNG/TIFF); MaxWorkers controlla la larghezza del pool; passare 0 o un valore negativo per la gestione automatica (minimo tra il conteggio delle pagine e il conteggio delle CPU); solo per Windows: CoInitialize e GDI+ sono primitive di Windows

Syntax

Delphi

Function TPDFlib.RenderPagesToFilesParallel(Const FileName, Password: WideString; DPI: Double; StartPage, EndPage, Options: Integer; Const OutputPattern: WideString; MaxWorkers: Integer): Integer;

Parameters

FileName, PasswordPercorso del PDF sorgente e relativa password (vuota se non crittografata)
DPIRender resolution
StartPage, EndPageIntervallo di pagine inclusivo basato su 1
OptionsFormato (uguale a RenderPageToFile: 0=BMP 1=JPEG 5=PNG ...)
OutputPatternPercorso di output; '%p' viene sostituito dal numero di pagina, altrimenti il numero viene aggiunto alla fine
MaxWorkersLarghezza del pool (0 = auto, limitata al numero di pagine e al numero di CPU)

Return values

>= 0Numero di pagine renderizzate con successo (i fallimenti di singole pagine sono isolati, non fatali)