RenderPagesToFilesParallel

Rendering and printing

Опис

Рендерить усі сторінки від StartPage до EndPage початкового PDF, по одному файлу зображення на сторінку, пулом паралельних робочих TTask. Кожен робочий потік створює власний екземпляр TPDFlib на тому самому файлі (TPDFlib не потокобезпечний), викликає CoInitialize свого потоку для безпеки GDI+ apartment і рендерить сторінки, які розбирає зі спільного атомарного лічильника, доки діапазон не вичерпається

Це масштабується майже лінійно з ядрами CPU для обмеженого процесором растрового виводу (BMP/PNG/TIFF). MaxWorkers керує шириною пулу; передайте 0 чи від'ємне значення для автоматичного вибору (мінімум з кількості сторінок і кількості CPU). Лише Windows: CoInitialize і GDI+ — примітиви Windows

Синтаксис

Delphi

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

Параметри

FileName, PasswordШлях вихідного PDF і його пароль (порожньо, якщо не зашифровано)
DPIRender resolution
StartPage, EndPageвключний діапазон сторінок починаючи з 1
OptionsFormat (same as RenderPageToFile: 0=BMP 1=JPEG 5=PNG ...)
OutputPatternШлях виводу; '%p' замінюється номером сторінки, інакше номер додається
MaxWorkersШирина пулу (0 = авто, обмежено кількістю сторінок та CPU)

Return values

>= 0Кількість успішно відрендерених сторінок (односторінкові провали ізольовані, не фатальні)