Skip to content

PDF/A: 6.1.13 Implementation limits #2995

@reknih

Description

@reknih

PDF/A-2 imposes implementation limits on integers, floats, strings, names, indirect object count, q/Q pairs in content streams, numbers of colorants in a DeviceN space and CID values. Export to PDF/A needs to fail if any of these limits is exceeded.

Some of these are enforced by pdf-writer through the type system. We always explicitly write DeviceN colorants (never > 4) and the number of CID values depends on the glyph count in the font (OpenType fonts never contain more than 65535 glyphs).

However, the following could arise through user input and need to trigger an alert at the export stage.

  • Strings longer than 32767 bytes
  • Names longer than 127 bytes (e.g. when containing font name)
  • More than 8388607 indirect objects
  • More than 28 q/Q nesting level

This depends on #2943. However, inroads here could be made by tracking e.g. nesting level and indirect object count without reporting in a first PR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    pdfRelated to PDF export or PDF embedding.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions