THotPDF.LoadFromFile

THotPDF

 

Överst  Föregående  Nästa

Loads an existing PDF file.

 

Delphi syntax:

function LoadFromFile ( FileName: TFileName ): Integer;

function LoadFromFile ( FileName: TFileName; const Password: AnsiString ): Integer;

function LoadFromFile ( FileName: TFileName; AutoDecrypt: Boolean ): Integer;

 

C++ syntax:

int __fastcall LoadFromFile ( AnsiString FileName );

int __fastcall LoadFromFile ( AnsiString FileName, System::AnsiString Password );

int __fastcall LoadFromFile ( AnsiString FileName, bool AutoDecrypt );

 

Beskrivning

Anropa LoadFromFile för att läsa in en befintlig PDF-fil. Funktionen LoadFromFile returnerar antalet sidor i den inlästa filen. En fil där ingen sida kan hittas, till exempel en tom eller icke-PDF-fil, returnerar 0 eller utlöser ett undantag. En krypterad fil vars sidor ligger i krypterade object streams utlöser ett undantag när den läses in utan sitt lösenord; använd lösenordsöverloaden

Konfigurationen av korsreferensströmmen läses ur sina egna ordlistenycklar, inklusive PDF-namnescapes. En kapslad direkt /Encrypt-ordlista tillhandahåller säkerhetshanterarens parametrar utan att åsidosätta den yttre ström/Length-, /Filter-, /W-, /Index- eller trailerreferenserna; detta stödjer genuina AES-256 revision 6-dokument med ofiltrerade xref-strömmar och krypterade objektströmmar

PNG-prediktorparametrar i /DecodeParms löser också escapade PDF-namn och avvisar dubbletterade semantiska nycklar. Xref-strömmarkören lokaliserats efter den completa yttre ordlistan, så namn, strängar och kommentarer som innehåller stream blir inte nyttolastgränser. Läsningen konsumerar endast den obligatoriska radslutet efter markören och bevarar en whitespace-värderad första nyttolastbyte

Lokala filer på eller över LocalFileMappingThreshold använder begränsad fönsterindelad minnesmappning med en gemensam LRU-fönstercache för parserläsningar och oföränderliga lata strömintervall. Konfigurera mappningsgeometrin med LocalFileMappingWindowSize och LocalFileMappingCacheWindows; sätt tröskeln till noll för att behålla TFileStream-vägen. Mappningsfel faller automatiskt tillbaka. Mindre filer, och alla filer när mappning är av eller misslyckas, läses via en 64 KB läsbuffert över filströmmen

Använd lösenordsöverloaden för RC4- och AES Standard-krypterade PDF-filer som stöds. HotPDF validerar användar- eller ägarlösenordet, återställer filnyckeln från avgränsade trailer-, xref-, dokument-ID- och krypteringsordlisteintervall, dekrypterar laddade strängar och strömmar i minnet, rensar det laddade krypteringstillståndet och låter SaveLoadedDocument skriva en okrypterad kopia. Inläsning utan lösenord fångar det råa krypteringsobjektet via dess auktoritativa xref-offset så att ett senare DecryptLoadedDocument-anrop kan använda exakta binära säkerhetshanterarvärden utan att öppna filen igen. Krypteringsrevisioner som inte stöds utlöser ett undantag. Begränsad nyckelåterställning finns sedan HotPDF v2.489.0, och fördröjd dekryptering utan omläsning finns sedan HotPDF v2.490.0.

AutoDecrypt-överloaden öppnar dokument som visare gör. När AutoDecrypt är True och dokumentet är krypterat med ett tomt användarlösenord, vilket är hur dokument som bara begränsar behörigheter skrivs, dekrypteras det i minnet exakt som lösenordsöverloaden skulle göra med ett tomt lösenord, så att dess text kan extraheras, renderas och exporteras; IsEncrypted är då False och en senare SaveLoadedDocument skriver en okrypterad kopia. Ett dokument som behöver ett lösenord, och ett okrypterat, läses in som den vanliga överloaden läser in det. Huruvida det tomma lösenordet öppnar dokumentet kontrolleras först från samma avgränsade intervall, utan att dokumentet läses in två gånger. Med AutoDecrypt False är överloaden den vanliga

När befintliga PDF-objekt importeras dekodar HotPDF ISO 32000-1 PDF name #XX escape-sekvenser innan namnvärden lagras internt. Namn som /PANTONE#20216#20CVC, /lime#20Green och /The_Key_of_F#23_Minor bevaras som avsedda bytevärden när dokumentet senare kopieras eller sparas.

 

 

See also: Fönstrad lokal filmappning, LoadFromStream, DecryptLoadedDocument