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 Long

Parametry

URLAdresa http nebo https vzdáleného PDF
PasswordHeslo dokumentu, nebo prázdný řetězec, když PDF není zašifrováno
OptionsNula pro výchozí zahřáté otevření první stránky, nebo PDF_NET_OPT_NO_WARMING k otevření čistě na vyžádání
ChunkSizeJen Delphi; zrnitost zarovnaného stahování rozsahů, přičemž nula volí 64 KiB
CacheLimitBytesJen Delphi; maximální uchované bajty zdroje, přičemž nula volí 4 MiB a hodnoty pod jeden blok se zvednou na jeden blok
CoalesceWindowMSJen 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

>0Popisovač dokumentu s přímým přístupem
0Dokument 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