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 that receives the complete object-stream PDF |
| FileName | Output path replaced only after a sibling temporary file succeeds |
| Option | Normal save option or saRemoveSecurity; saIncremental is rejected |
| PdfVersion | Output version from PDF 1.5 upward, or pvUnknown to preserve or upgrade the current version |
| MaxObjectsPerStream | Maximum object members per ObjStm group; the default is 100 |
| MaxDecodedBytesPerStream | Maximum decoded member payload per group; the default is 65536 bytes |
True when the object-stream output was completed successfullyMetode pertama-tama memakai jalur penyimpanan PDFium normal sebagai sumber semantik, lalu meresolusi revisi classic, hybrid, atau xref-stream aktif
Anggota object-stream yang ada dimaterialisasikan sebelum referensi dinomori ulang ke urutan lokal halaman
Objek non-stream yang memenuhi syarat dikelompokkan berdasarkan jumlah anggota dan ukuran payload terdekode, lalu dikompres Flate hanya ketika kompresi mengurangi grup
Katalog, objek stream, kamus tanda tangan, panjang stream tidak langsung, dan nilai berukuran besar tetap dapat dialamatkan langsung
Xref stream murni memakai lebar field adaptif dan entri tipe-2 untuk setiap anggota terkompresi
saIncremental is not supported and existing digital signatures become invalidsaRemoveSecurity because object renumbering changes object-level encryption keys
// Seimbangkan output ringkas dengan dekompresi akses acak terbatas
Pdf.SaveAsObjectStream('report-compact.pdf', saNoIncremental, pv17, 100, 65536);