LoadFromMappedFile

Správa dokumentů, výkon, vstup ze souborů

Popis

Načítá a vybírá lokální PDF přes ohraničené mapované zobrazení jen pro čtení, takže velká odložená čtení objektů a streamů mohou znovu používat souborové stránky operačního systému, aniž by se kompletní zdroj držel v paměti

Syntaxe

Delphi

Function TPDFlib.LoadFromMappedFile(Const FileName, Password: WideString;
  WindowSize: Int64= 0; Options: Integer= 0): Integer;

Parametry

FileNameCesta k lokálnímu PDF
PasswordHeslo k otevření PDF, nebo prázdný řetězec pro nešifrovaný dokument
WindowSizePožadovaná velikost mapovaného zobrazení v bajtech; nula vybere 64 MiB, hodnoty pod granularitou alokace operačního systému se zvednou na tuto granularitu a hodnoty nad 1 GiB se omezí
OptionsNula dovolí fallback na souborový stream jen pro čtení, zatímco PDF_MAPPED_FILE_REQUIRE_MAPPING selže, není-li aktivní mapované zobrazení

Návratové hodnoty

0Argumenty byly neplatné, soubor se nepodařilo otevřít, požadované mapování nebylo k dispozici, nebo se PDF nepodařilo načíst; prohlédněte LastErrorCode
1Dokument byl načten a vybrán

Poznámky

Sestavení pro Windows si uchovávají jedno zobrazení jen pro čtení a přemapovávají je podle potřeby na hranicích granularity alokace; ostatní platformy i selhání mapování používají tutéž smlouvu absolutních čtení nad běžným souborovým streamem jen pro čtení, pokud mapování není vyžadovánoVýchozí zobrazení 64 MiB ohraničuje využití adresního prostoru nezávisle na velikosti zdroje a hodí se pro roztroušený přístup k velkým lokálním souborům; menší zobrazení může snížit rezidentní adresní prostor na úkor více přemapováníAbsolutní čtení objektových výřezů kopírují přímo z aktuálního zobrazení do úložiště parseru beze změny pozicového kurzoru streamu; nejde o perzistentní API ukazatelů s nulovým kopírováním, protože přemapování zneplatňuje adresy zobrazeníZdroj zůstává otevřený, dokud není načtený dokument odebrán, a ukládání či odložená extrakce mohou z něj číst dálJe-li přiřazeno

OnPassword, každý odmítnutý pokus o heslo obdrží čerstvě mapovaný stream a stav parseruPřes

GetMappedFileInfo potvrdíte, zda je mapování aktivní, a prohlédnete aktuální statistiky zobrazení a čtení