StartRenderPageJob
Documentinspectie, rendering
Beschrijving
Start een backgroundjob die een pagina van een PDF-bestand rendert zonder de thread van de aanroeper te blokkeren
Omdat TPDFlib niet thread-safe is, maakt de job een geïsoleerde instantie aan vanuit hetzelfde bronbestand en draait op een systeemtaak, zodat een grote pagina de hostthread niet langer kan monopoliseren totdat ze klaar is
De job voegt een annuleringsvlag en een handmatig te resetten pauzegate in de renderer in, die ertussen controleert tussen contentstream-operators; dit is wat PauseRenderJob, ResumeRenderJob en CancelRenderJob in staat stelt één pagina onderweg te onderbreken
Syntaxis
Delphi
Function TPDFlib.StartRenderPageJob(Const FileName, Password, OutputFileName: WideString; DPI: Double; Page, Options: Integer): Integer;DLL
int DLStartRenderPageJob(int InstanceID, const wchar_t* FileName, const wchar_t* Password, const wchar_t* OutputFileName, double DPI, int Page, int Options);ActiveX
Function PDFlib::StartRenderPageJob(FileName As String, Password As String, OutputFileName As String, DPI As Double, Page As Long, Options As Long) As LongParameters
| FileName | Het pad van het bron-PDF-bestand |
|---|---|
| Password | Het documentwachtwoord, of een lege tekenreeks wanneer de PDF niet is versleuteld |
| OutputFileName | Het doelafbeeldingspad; het formaat volgt Options zoals bij RenderPageToFile |
| DPI | De renderresolutie |
| Page | Het te renderen paginanummer, beginnend bij 1 |
| Options | De afbeeldingsformaat-optie die rechtstreeks aan RenderPageToFile wordt doorgegeven |
Retourwaarden
| >0 | Een job-handle (beginnend bij 1) voor gebruik met de render-job-stuurmethoden |
|---|---|
| 0 | De job kon niet worden gestart |
Opmerkingen
Bevraag de voortgang met GetRenderJobState en blokkeer met WaitForRenderJob; beide geven de RENDER_JOB_STATE_*-codes terugGebruik
PauseRenderJob, ResumeRenderJob en CancelRenderJob om een draaiende pagina te onderbreken zonder de workerthread te verliezen
De instantie die de job is gestart, is de eigenaar; bij het vrijgeven van de instantie worden lopende jobs afgehandeld, zodat een half afgeronde pagina zijn eigenaar nooit overleeft