function SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean;
function SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean;
| Stream | TStream, který obdrží kompletní PDF s objektovými proudy |
| FileName | Výstupní cesta nahrazená až poté, co uspěje sesterský dočasný soubor |
| Option | Normal save option or saRemoveSecurity; saIncremental is rejected |
| PdfVersion | Výstupní verze od PDF 1.5 výše, nebo pvUnknown pro zachování nebo upgrade aktuální verze |
| MaxObjectsPerStream | Maximální počet členů objektů na skupinu ObjStm; výchozí je 100 |
| MaxDecodedBytesPerStream | Maximální dekódovaný obsah členů na skupinu; výchozí je 65536 bajtů |
True, když byl výstup s objektovými proudy úspěšně dokončenMetoda nejprve použije běžnou cestu uložení PDFium jako sémantický zdroj a poté vyřeší aktivní klasickou, hybridní nebo xref-stream revizi
Existující členové objektových proudů jsou materializováni, než jsou odkazy přečíslovány do pořadí lokálního pro stránku
Vhodné nestreamové objekty jsou seskupeny podle počtu členů i dekódované velikosti obsahu a poté Flate-komprimovány pouze tehdy, když komprese skupinu zmenší
Katalog, streamové objekty, slovníky podpisů, nepřímé délky proudů a příliš velké hodnoty zůstávají přímo adresovatelné
Čistý xref proud používá adaptivní šířky polí a položky typu 2 pro každého komprimovaného člena
saIncremental není podporován a stávající digitální podpisy se stávají neplatnýmisaRemoveSecurity, protože přečíslování objektů mění šifrovací klíče na úrovni objektů
// Vyváží kompaktní výstup s ohraničenou dekompresí s náhodným přístupem
Pdf.SaveAsObjectStream('report-compact.pdf', saNoIncremental, pv17, 100, 65536);