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, Password | Percorso del PDF sorgente e relativa password (vuota se non crittografata) |
|---|---|
| DPI | Render resolution |
| StartPage, EndPage | Intervallo di pagine inclusivo basato su 1 |
| Options | Formato (uguale a RenderPageToFile: 0=BMP 1=JPEG 5=PNG ...) |
| OutputPattern | Percorso di output; '%p' viene sostituito dal numero di pagina, altrimenti il numero viene aggiunto alla fine |
| MaxWorkers | Larghezza del pool (0 = auto, limitata al numero di pagine e al numero di CPU) |
Return values
| >= 0 | Numero di pagine renderizzate con successo (i fallimenti di singole pagine sono isolati, non fatali) |
|---|