THotPDF.UseXRefStream Property

 

THotPDF.UseXRefStream

THotPDF

 

Boven  Vorige  Volgende

Schrijf een PDF 1.5 /Type /XRef-cross-reference stream (ISO 32000-1 7.5.8) in plaats van de tekstuele xref ... trailer-volgorde

 

Delphi-syntaxis:

property UseXRefStream: Boolean;

 

C++-syntaxis:

__property bool UseXRefStream;

 

Beschrijving

Wanneer UseXRefStream op true staat, schrijft EndDoc één indirect streamobject van het type /Type /XRef in plaats van de oude tekstuele xref-tabel + trailer + startxref-volgorde. De vermeldingen gebruiken /W [1 4 2]: een typeveld van één byte, een offset van vier bytes (of het hostnummer van een gecomprimeerd object), en een generatie van twee bytes (of de index van het gecomprimeerde object). De hele tabel wordt FlateDecode-gecomprimeerd, wat de xref-overhead op grote documenten doorgaans 4-10x verlaagt

 

XRef-streams zijn een harde voorwaarde voor de UseObjectStreams-functie: alleen de binaire xref-stream kan de type-2-vermeldingen voor gecomprimeerde objecten coderen die naar /Type /ObjStm-containers verwijzen. Als u UseXRefStream uitzet, wordt UseObjectStreams bij het opslaan automatisch uitgeschakeld

 

Standaardwaarde: false (opt-in - behoudt de tekstuele xref-tabel voor tooling die het xref-sleutelwoord hardcodeert en voor maximale compatibiliteit met PDF 1.4 / eerdere readers)

Als UseXRefStream op true wordt gezet voor een document waarvan Version onder PDF 1.5 ligt, wordt dat bij het opslaan stilzwijgend genegeerd - in plaats daarvan wordt de tekstuele xref geschreven

 

Codevoorbeeld

HPDF := THotPDF.Create( nil );
try
  HPDF.FileName := 'c:\Output.pdf';
  HPDF.Version := pdf15;          // Required for XRef streams
  HPDF.UseXRefStream := true;     // Emit /Type /XRef instead of xref table
  HPDF.UseObjectStreams := true;  // Optional: also pack objects into /Type /ObjStm
  HPDF.Compression := cmFlateDecode;
  HPDF.BeginDoc;
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Compact PDF 1.5 output' );
  HPDF.EndDoc;
finally
  HPDF.Free;
end;

 

Zie ook

UseObjectStreams, Compression, Version, PDF-filterondersteuning