THotPDF.PrepareLoadedFormDataRevisionToStream
Przygotowuje prywatną rewizję rzeczywistego załadowanego grafu bez zmieniania oryginalnego dokumentu
Declaration
procedure PrepareLoadedFormDataRevisionToStream(Destination: TStream;
const Password: AnsiString; MaxWorkingBytes, MaxOutputBytes: Int64;
MaxObjects: Integer; Checkpoint: TNotifyEvent = nil;
OriginalSource: TStream = nil);
Behavior
Metoda kopiuje oryginalną rewizję do wyłącznie utworzonego prywatnego pliku, ładuje odrębny dokument przyrostowy, porównuje semantyczne grafy obiektów po numerze i generacji, klonuje rzeczywiste oczekujące zmiany i pisze wynikowego kandydata na bieżącej pozycji celu
Wartości tekstowe, istniejące wyglądy, niezwiązane oczekujące zmiany katalogu, referencje pośrednie, zawartość strumieni i nowe obiekty grafu uczestniczą w przygotowaniu; nazwy PDF są dekodowane raz, a zduplikowane semantyczne nazwy słowników są niepoprawne
Niezmieniony graf kopiuje dokładne oryginalne bajty bez dodawania pustej przyrostowej sekcji tabeli odwołań; zmienione grafy zachowują kompletny oryginalny prefiks bajtów i doklejają swoją bieżącą rewizję
Zaszyfrowane rewizje zachowują oryginalny słownik i klucz szyfrowania; Password musi uwierzytelnić oryginalną rewizję i jest dostarczany jako bajty UTF-8
OriginalSource, gdy dostarczony, musi być kompletną niemutowalną oryginalną rewizją, z której ten dokument był ładowany, łącznie z szyfrogramem i podpisanymi bajtami; jego pozycja jest przywracana przy sukcesie i awarii
Bez OriginalSource metoda używa CopyLoadedSourceToStream; to nie czyni zewnętrznie mutowalnego pożyczonego źródła niemutowalnym snapshotem, więc wywołujący muszą zachować jego dokładne załadowane bajty
MaxWorkingBytes musi być co najmniej 1 MiB; MaxOutputBytes i MaxObjects muszą być dodatnie; kopiowanie źródła, porównanie obiektów, dane klona rezydentne i spill oraz długość wyjścia mają skończone granice
OperationCancellationToken i Checkpoint są odpytywane podczas kopiowania i porównywania; kopiowanie używa bloków co najwyżej 64 KiB; nieudane przygotowanie może zostawić częściowe bajty celu, które wywołujący musi odrzucić
Ta niskopoziomowa metoda przygotowuje rewizję grafu i nie autoryzuje oczekujących zmian pod DocMDP albo FieldMDP; użyj THPDFWindowsFormDataTransaction, aby uwierzytelnić politykę podpisów przed publikacją aktualizacji formularzy
Oryginalny graf THotPDF, własność źródła, oczekujące zmiany i ustawienia pozostają nienaruszone, gdy przygotowanie się uda albo zawiedzie; pliki tymczasowe są zamykane i usuwane przy wyjściu metody
Related topics
CopyLoadedSourceToStream, THPDFWindowsFormDataTransaction, Wymiana FDF/XFDF Windows