DAOpenFromURL
Správa dokumentů, funkce přímého přístupu
Popis
Otevírá vzdálené PDF přes HTTP pro přímý přístup pomocí požadavků na byte-rozsahy
Přenos jednou sonduje URL, aby potvrdil podporu byte-rozsahů a zjistil celkovou délku, pak vyhledávatelný proud řídí stávajícího čtenáře náhodného přístupu, takže se po síti stahují jen objekty, které se skutečně čtou
Když je dokument linearizován a je povoleno ohřívání cache, sekce první stránky se přednačte v rámci rozpočtu uchovaných bajtů, takže stránka 1 se vykreslí, než se dotkne zbytek souboru
Syntaxe
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 LongParametry
| URL | Adresa http nebo https vzdáleného PDF |
|---|---|
| Password | Heslo dokumentu, nebo prázdný řetězec, když PDF není zašifrováno |
| Options | Nula pro výchozí zahřáté otevření první stránky, nebo PDF_NET_OPT_NO_WARMING k otevření čistě na vyžádání |
| ChunkSize | Jen Delphi; zrnitost zarovnaného stahování rozsahů, přičemž nula volí 64 KiB |
| CacheLimitBytes | Jen Delphi; maximální uchované bajty zdroje, přičemž nula volí 4 MiB a hodnoty pod jeden blok se zvednou na jeden blok |
| CoalesceWindowMS | Jen Delphi; okno sběru pro první neuložený blok každého absolutního čtení, s 2 milisekundami jako výchozí a nulou vypnoucí počáteční prodlevu |
Návratové hodnoty
| >0 | Popisovač dokumentu s přímým přístupem |
|---|---|
| 0 | Dokument se nepodařilo otevřít; LastErrorCode je nastaveno na PDFLIB_ERROR_NET_OPEN, PDFLIB_ERROR_NET_RANGE_UNSUPPORTED, PDFLIB_ERROR_NET_HTTP nebo kód struktury či hesla |
Poznámky
Server musí inzerovat podporu byte-rozsahů; jinak volání rychle selže s PDFLIB_ERROR_NET_RANGE_UNSUPPORTED namísto stažení celého souboru
Zavřete vrácený popisovač pomocí DACloseFile, která také uvolní podkladový přenosový proud
Souběžná odložená čtení sdílejí požadavky na stejný blok a slučují sousední bloky ve frontě do čtení zdroje omezeného na 16 MiB
Použijte GetLinearizedURLAccessPlan k inspekci byte-rozsahového rozvržení stránky 1 bez otevření dokumentu
Pomocí DAGetRangeSourceCacheInfo, DASetRangeSourceCacheLimit a DAClearRangeSourceCache můžete sledovat nebo měnit cache přímého přístupu Delphi