diff options
author | Ken Sharp <ken.sharp@artifex.com> | 2022-03-21 17:27:47 +0000 |
---|---|---|
committer | Ken Sharp <ken.sharp@artifex.com> | 2022-03-21 17:30:20 +0000 |
commit | 1158b25fe28f9d60c65417712f16a0f9cccac95c (patch) | |
tree | da5ab7328619ada55b8aae2a3649566923ac33dd /doc | |
parent | 9f6772c1292022dee6576b2f3d0c258e523af834 (diff) | |
download | ghostpdl-1158b25fe28f9d60c65417712f16a0f9cccac95c.tar.gz |
pdfwrite - add controls for optional entries with variable content
Bug #704846 "Optionally omit CreatingTime in PDF output for reproducibility"
Some content in a PDF file is created using the system time, and will
vary depending on the precise time the file is created. This is entirely
correct and we are not prepared to alter this behaviour.
However said content is also often optional, but there was no way to
prevent pdfwrite creating it.
This commit adds three new controls; OmitDateInfo, OmitXMP and OmitID
which direct pdfwrite not to create and include the CreationDate and
ModDate in the /Info dict and Metadata (OmitInfoDate), the file ID in
the trailer dictionary (OmitID) and the XMP Metadata included in the
Catalog dictionary (OmitXMP).
There are, however, other considerations. XMP metadata is required for a
valid PDF/A file, /ID is required for PDF 2.0, and for encrypted files
and CreationDate is required for PDF/X-3.
As a result if you try to set these controls with one of those other
features, it will raise a warning and ignore the control.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/VectorDevices.htm | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/doc/VectorDevices.htm b/doc/VectorDevices.htm index e4de807fe..7a25d1a74 100644 --- a/doc/VectorDevices.htm +++ b/doc/VectorDevices.htm @@ -798,14 +798,42 @@ usually result in a slightly larger PDF file.</dd> instead applied by the interpreter. <p> This control also requires the PDF interpreter to pass the marked content to the pdfwrite device, this is only done with the - new (C-based) PDF interpreter. THe old (PostScript-based) interpreter does not support this feature and will not pass marked + new (C-based) PDF interpreter. The old (PostScript-based) interpreter does not support this feature and will not pass marked content to the pdfwrite device. </p> </dd> </dl> -The following options are useful for creating PDF 1.2 files: +<d1> + <dt><code>-dOmitInfoDate</code><em>boolean</em></dt> + <dd>Under some conditions the CreationDate and ModDate in the /Info dictionary are optional and can be omitted. They are required + when producing PDF/X output however. This control will allow the user to omit the /CreationDate and /ModDate entries in the + Info dictionary (and the corresponding information in the XMP metadata, if present). If you try to set this control when + writing PDF/X output, the device will give a warning and ignore this control. + </dd> +</d1> +<p></p> + +<d1> + <dt><code>-dOmitID</code><em>boolean</em></dt> + <dd>Under some conditions the /ID array trailer dictionary is optional and can be omitted. It is required + when producing PDF 2.0, or encrypted PDFs however. This control will allow the user to omit the /ID entry in the + trailer dictionary. If you try to set this control when writing PDF 2.0 or encrypted PDF output, the device will give a warning and ignore this control. + </dd> +</d1> +<p></p> + +<d1> + <dt><code>-dOmitXMP</code><em>boolean</em></dt> + <dd>Under some conditions the XMP /Metadata entry in the Catalog dictionary is optional and can be omitted. It is required + when producing PDF/A output however. This control will allow the user to omit the /Metadata entry in the + Catalog dictionary. If you try to set this control when writing PDF/A output, the device will give a warning and ignore this control. + </dd> +</d1> +<p></p> + <p> +The following options are useful for creating PDF 1.2 files: <dl> |