DAOpenFromURL
Gestione dei documenti, funzionalità di accesso diretto
Descrizione
Apre un PDF remoto via HTTP per l'accesso diretto mediante richieste a intervalli di byte
Il trasporto sonda l'URL una volta per confermare il supporto a intervalli di byte e conoscere la lunghezza totale; poi un flusso ricercabile dirige il lettore ad accesso casuale esistente, così solo gli oggetti realmente letti vengono recuperati via rete
Quando il documento è linearizzato e il riscaldamento della cache è attivo, la sezione della prima pagina viene precaricata entro il budget di byte conservati così la pagina 1 si renderizza prima di toccare il resto del file
Sintassi
Delphi
Function TPDFlib.DAOpenFromURL(Const URL, Password: WideString; Options: Integer= 0; ChunkSize: LongInt= 0; CacheLimitBytes: Int64= 0; CoalesceWindowMS: Cardinal= PDF_NET_DEFAULT_COALESCE_WINDOW_MS): Integer;DLL
int DLDAOpenFromURL(int InstanceID, const wchar_t* URL, const wchar_t* Password, int Options);ActiveX
Function PDFlib::DAOpenFromURL(URL As String, Password As String, Options As Long) As LongParametri
| URL | Indirizzo http o https del PDF remoto |
|---|---|
| Password | La password del documento, oppure una stringa vuota quando il PDF non è cifrato |
| Options | Zero per l'apertura predefinita con riscaldamento della prima pagina, oppure PDF_NET_OPT_NO_WARMING per aprire puramente su richiesta |
| ChunkSize | Solo Delphi; la granularità allineata del recupero degli intervalli, con zero che seleziona 64 KiB |
| CacheLimitBytes | Solo Delphi; il massimo di byte della sorgente mantenuti, con zero che seleziona 4 MiB e valori inferiori a un chunk portati a un chunk |
| CoalesceWindowMS | Solo Delphi; la finestra di raccolta per il primo chunk non in cache di ogni lettura assoluta, con 2 millisecondi come predefinito e zero che disabilita il ritardo iniziale |
Valori restituiti
| >0 | Un handle di documento ad accesso diretto |
|---|---|
| 0 | Il documento non poteva essere aperto; LastErrorCode è impostato a PDFLIB_ERROR_NET_OPEN, PDFLIB_ERROR_NET_RANGE_UNSUPPORTED, PDFLIB_ERROR_NET_HTTP oppure a un codice di struttura o password |
Osservazioni
Il server deve dichiarare il supporto degli intervalli di byte; in caso contrario la chiamata fallisce rapidamente con PDFLIB_ERROR_NET_RANGE_UNSUPPORTED invece di scaricare l'intero fileChiudere l'handle restituito con
Chiudete l'handle restituito con DACloseFile, che libera anche il flusso di trasporto sottostante
Le letture differite concorrenti condividono richieste dello stesso blocco e combinano blocchi adiacenti in coda in letture dall'origine limitate a 16 MiB
Usate GetLinearizedURLAccessPlan per ispezionare il layout a intervalli di byte della pagina 1 senza aprire il documento
DAGetRangeSourceCacheInfo per esaminare il layout a intervalli di byte della pagina 1 senza aprire il documentoUsare DASetRangeSourceCacheLimit, DAClearRangeSourceCache e