DAOpenFromURL
Documentbeheer, functionaliteit voor directe toegang
Beschrijving
Opent een externe PDF via HTTP voor directe toegang met byte-range-verzoeken
Het transport peilt de URL één keer om byte-range-ondersteuning te bevestigen en de totale lengte te leren, daarna stuurt een positioneerbare stream de bestaande lezer met willekeurige toegang zodat alleen de werkelijk gelezen objecten over het netwerk worden opgehaald
Wanneer het document gelineariseerd is en cache-opwarming is ingeschakeld, wordt de eerste-paginasectie vooraf opgehaald binnen het budget voor vastgehonden bytes, zodat pagina 1 wordt gerenderd voordat de rest van het bestand wordt aangeraakt
Syntaxis
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 LongParameters
| URL | Het http- of https-adres van de externe PDF |
|---|---|
| Password | Het documentwachtwoord, of een lege string wanneer de PDF niet versleuteld is |
| Options | Nul voor het standaard openen met opgewarmde eerste pagina, of PDF_NET_OPT_NO_WARMING om puur op aanvraag te openen |
| ChunkSize | Alleen Delphi; de uitgelichte granulariteit voor het ophalen van ranges, waarbij nul 64 KiB kiest |
| CacheLimitBytes | Alleen Delphi; het maximum aan vastgehouden bronbytes, waarbij nul 4 MiB kiest en waarden onder één chunk naar één chunk worden verhoogd |
| CoalesceWindowMS | Alleen Delphi; het verzamelvenster voor de eerste niet-gecache chunk van elke absolute lezing, met 2 milliseconden als standaard en nul die de initiële vertraging uitschakelt |
Retourwaarden
| >0 | Een direct-access documenthandle |
|---|---|
| 0 | Het document kon niet worden geopend; LastErrorCode is ingesteld op PDFLIB_ERROR_NET_OPEN, PDFLIB_ERROR_NET_RANGE_UNSUPPORTED, PDFLIB_ERROR_NET_HTTP of een structuur- of wachtwoordcode |
Opmerkingen
De server moet byte-range ondersteuning aankondigen; anders faalt de aanroep snel met PDFLIB_ERROR_NET_RANGE_UNSUPPORTED in plaats van het hele bestand te downloadenSluit de geretourneerde handle met
Sluit het geretourneerde handle met DACloseFile, dat ook de onderliggende transportstream vrijgeeft
Gelijktijdige uitgestelde lezingen delen verzoeken voor hetzelfde blok en combineren aangrenzende blokken in de wachtrij tot bronlezingen met een plafond van 16 MiB
DAGetRangeSourceCacheInfo om de byte-range indeling van pagina 1 te bekijken zonder het document te openenGebruik DASetRangeSourceCacheLimit, DAClearRangeSourceCache en