aboutsummaryrefslogtreecommitdiffstats
path: root/manual
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2023-12-21 23:14:28 +0100
committerJay Berkenbilt <ejb@ql.org>2023-12-21 23:43:29 +0100
commit4400ce84eeb204cdcb35950dd8fde094fc249051 (patch)
tree2a60ae462f22d21b35214a3fdaa4af5d63f8b149 /manual
parentbb12a7ff8df1582a2cb0583bc463a84f5a736219 (diff)
downloadqpdf-4400ce84eeb204cdcb35950dd8fde094fc249051.tar.zst
Add "n:/pdf-name" to qpdf JSON for binary names (fixes #1072)
Diffstat (limited to 'manual')
-rw-r--r--manual/json.rst9
-rw-r--r--manual/release-notes.rst7
2 files changed, 15 insertions, 1 deletions
diff --git a/manual/json.rst b/manual/json.rst
index e848cc65..e07dde3b 100644
--- a/manual/json.rst
+++ b/manual/json.rst
@@ -258,6 +258,12 @@ Object Values
syntax resolved. For example, the name whose canonical form (per
the PDF specification) is ``text/plain`` would be represented in
JSON as ``"/text/plain"`` and in PDF as ``"/text#2fplain"``.
+ Starting with qpdf 11.7.0, the syntax ``"n:/pdf-syntax"`` is
+ accepted as an alternative. This can be used for any name (e.g.
+ ``"n:/text#2fplain"``), but it is necessary when the name contains
+ binary characters. For example, ``/one#a0two`` must be represented
+ as ``"n:/one#a0two"`` since the single byte ``a0`` is not valid in
+ JSON.
- Indirect object references are represented as JSON strings that
look like a PDF indirect object reference and have the form
@@ -824,7 +830,8 @@ version 2.
- Names are shown in qpdf's canonical form rather than in PDF
syntax. (Example: the PDF-syntax name ``/text#2fplain`` appeared
as ``"/text#2fplain"`` in v1 but appears as ``"/text/plain"`` in
- v2.
+ v2. In qpdf 11.7.0, a fix was made to accept ``"n:/pdf-syntax"``
+ for names containing binary characters.
- The top-level representation of an object in ``"objects"`` is a
dictionary containing either a ``"value"`` key or a ``"stream"``
diff --git a/manual/release-notes.rst b/manual/release-notes.rst
index 5e41fef7..f720f99e 100644
--- a/manual/release-notes.rst
+++ b/manual/release-notes.rst
@@ -45,6 +45,13 @@ Planned changes for future 12.x (subject to change):
reference streams, linearization hint streams, and object
streams. This has been fixed.
+ - Fix to QPDF JSON: the syntax ``"n:/pdf-syntax"`` is now accepted
+ as an alternative way to represent names. This can be used for
+ any name (e.g. ``"n:/text#2fplain"``), but it is necessary when
+ the name contains binary characters. For example, ``/one#a0two``
+ must be represented as ``"n:/one#a0two"`` since the single byte
+ ``a0`` is not valid in JSON.
+
- Build Enhancements:
- The qpdf test suite now passes when qpdf is linked with an