|
THotPDF.UseObjectStreams
|
Top Vorige Volgende |
|
Pakt in aanmerking komende indirecte objecten in PDF 1.5
Delphi-syntax: property UseObjectStreams: Boolean;
C++-syntax: __property bool UseObjectStreams;
Description Wanneer UseObjectStreams true is (en UseXRefStream ook true), pakt EndDoc elk in aanmerking komend indirect object - woordenlijsten, arrays, getallen, namen, tekenreeksen, booleans, nulls - in één of meer
Past van nature bij de eigenschap UseXRefStream voor de meest compacte PDF 1.5+-writerspijplijn. De ObjStm-packer laat streamobjecten, de versleutelingswoordenlijst en de naar de trailer wijzende Catalogus- en Info-woordenlijsten ongecomprimeerd, zodat zelfs minimale PDF-parsers de documentwortels kunnen vinden en inhoud kunnen ontsleutelen.
Standaardwaarde: false (opt-in). UseObjectStreams op true zetten zakt geruisloos terug naar false wanneer UseXRefStream uit staat (type-2-regels zijn volgens de specificatie niet representeerbaar in de tekstuele xref-tabel) of wanneer Version onder PDF 1.5 zit.
Het wordt ook afgedwongen uit onder PDF/A-1: ISO 19005-1 (PDF 1.4, clausule 6.1.4) verbiedt gecomprimeerde objectstreams samen met de kruisverwijzingsstreams waarop ze rijden, dus EndDoc geeft een klassieke xref-tabel uit zodra PDFACompliance een part-1-niveau noemt, terwijl PDF/A-2 en PDF/A-3 (PDF 1.7) het beschikbaar laten
Codevoorbeeld
Groottebesparing Op documenten die domineren door kleine indirecte woordenlijsten (documenten met veel pagina's, annotaties, AcroForm-widgets, structuurboomelementen, Optional Content-lagen) is de besparing typisch 20-40% van de bestandsgrootte na FlateDecode. Een 30-pagina rooktest met alleen graphics krimpt van 14502 bytes naar 8488 bytes (-41,5%).
Zie ook UseXRefStream, Compression, Version, PDF-filterondersteuning
|