THotPDF.LoadFromFile

THotPDF

 

Góra  Poprzedni  Następny

Ładuje istniejący plik PDF.

 

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 );

 

Description

Wołaj  LoadFromFile, by wczytać istniejący plik PDF. Funkcja LoadFromFile zwraca liczbę stron wczytanego pliku. Plik, w którym nie da się znaleźć żadnej strony — na przykład pusty albo nie-PDF — zwraca 0 lub podnosi wyjątek. Zaszyfrowany plik, którego strony leżą w zaszyfrowanych object streams, nie da użytecznych wyników stron bez poprawnego hasła; użyj overloadu hasłowego

Konfiguracja strumienia cross-reference jest czytana z własnych kluczy słownika, łącznie z eskapami nazw PDF. Zagnieżdżony bezpośredni słownik /Encrypt dostarcza parametrów handlera bezpieczeństwa bez nadpisywania zewnętrznych /Length, /Filter, /W, /Index strumienia ani referencji trailera. Obsługuje to prawdziwe dokumenty AES-256 rewizji 6 z niefiltrowanymi strumieniami xref i zaszyfrowanymi object streams

Parametry predictora PNG w /DecodeParms również rozwiązują eskapowane nazwy PDF i odrzucają zduplikowane klucze semantyczne. Znacznik strumienia xref jest lokalizowany po kompletnym słowniku zewnętrznym, więc nazwy, łańcuchy i komentarze zawierające stream nie stają się granicami payloadu. Odczyt konsumuje tylko wymagane kończenie wiersza po znaczniku i zachowuje pierwszy bajt payloadu będący białym znakiem

Lokalne pliki o rozmiarze od LocalFileMappingThreshold w górę używają ograniczonego mapowania okienkowego pamięci ze współdzielonym cache okien LRU dla odczytów parsera i niemutowalnych leniwych zakresów strumieni. Geometrię mapowania konfigurują LocalFileMappingWindowSize i LocalFileMappingCacheWindows; ustawienie progu na zero zachowuje ścieżkę TFileStream. Awarie mapowania schodzą automatycznie do fallbacku. Mniejsze pliki, a także każdy plik, gdy mapowanie jest wyłączone albo się nie powiedzie, są czytane przez bufor odczytu 64 KB na strumieniu pliku

Overloadu hasłowego używaj dla obsługiwanych zaszyfrowanych PDF-ów Standard RC4 i AES. HotPDF waliduje hasło użytkownika albo właściciela, odzyskuje klucz pliku z ograniczonych zakresów trailera, xref, identyfikatora dokumentu i słownika szyfrowania, deszyfruje załadowane ciągi i strumienie w pamięci, czyści załadowany stan szyfrowania i pozwala SaveLoadedDocument zapisać nieszyfrowaną kopię. Wczytanie bez hasła przechwytuje surowy obiekt szyfrowania pod jego autorytatywnym offsetem xref, więc późniejsze wywołanie DecryptLoadedDocument może użyć dokładnych binarnych wartości handlera bezpieczeństwa bez ponownego otwierania pliku. Nieobsługiwane rewizje szyfrowania podnoszą wyjątek. Ograniczone odzyskiwanie klucza jest dostępne od HotPDF v2.489.0, a odczyt z opóźnionym deszyfrowaniem bez ponownego czytania od HotPDF v2.490.0.

Overload z AutoDecrypt otwiera dokumenty tak, jak robią to przeglądarki. Gdy AutoDecrypt jest True, a dokument jest zaszyfrowany pustym hasłem użytkownika — tak zapisuje się dokumenty, które tylko ograniczają uprawnienia — jest deszyfrowany w pamięci dokładnie tak, jak zrobiłby to overload hasłowy z pustym hasłem, więc jego tekst można wyodrębniać, renderować i eksportować; IsEncrypted jest potem False, a późniejszy SaveLoadedDocument zapisuje nieszyfrowaną kopię. Dokument wymagający hasła, jak i dokument niezaszyfrowany, wczytuje się tak, jak wczytuje go overload zwykły. Czy puste hasło otwiera dokument, jest sprawdzane najpierw z tych samych ograniczonych zakresów, bez wczytywania dokumentu dwa razy. Przy AutoDecrypt równym False overload jest zwykły

Przy imporcie istniejących obiektów PDF HotPDF dekoduje sekwencje ucieczki nazw PDF #XX z ISO 32000-1, zanim zapisze wartości nazw wewnętrznie. Nazwy takie jak /PANTONE#20216#20CVC, /lime#20Green i /The_Key_of_F#23_Minor są zachowywane z zamierzonymi wartościami bajtowymi, gdy dokument jest później kopiowany albo zapisywany.

 

 

See also: Windowed Local File Mapping, LoadFromStream, DecryptLoadedDocument