RenderPagesToFilesParallel

Rendering and printing

Description

Vykreslí každú stránku od StartPage do EndPage zdrojového PDF do jedného obrazového súboru na stránku, s použitím poolu paralelných workerov TTask. Každý worker vytvorí vlastnú inštanciu TPDFlib nad tým istým súborom (TPDFlib nie je thread-safe), CoInitializuje svoje vlákno kvôli apartment bezpečnosti GDI+ a vykresľuje strany získané zo zdieľaného atomic počítadla, kým sa rozsah nevyčerpá

Pre CPU-zaťažený raster výstup (BMP/PNG/TIFF) sa toto škáluje takmer lineárne s jadrami CPU. MaxWorkers riadi šírku poolu; pre auto odovzdajte 0 alebo zápornú hodnotu (minimum z počtu stránok a počtu CPU). Len Windows: CoInitialize a GDI+ sú Windows primitívy

Syntax

Delphi

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

Parameters

FileName, PasswordSource PDF path and its password (empty if unencrypted)
DPIRender resolution
StartPage, EndPage1-based inclusive page range
OptionsFormat (same as RenderPageToFile: 0=BMP 1=JPEG 5=PNG ...)
OutputPatternOutput path; '%p' is replaced by the page number, else the number is appended
MaxWorkersPool width (0 = auto, capped at page count and CPU count)

Return values

>= 0Number of pages successfully rendered (single-page failures are isolated, not fatal)