From 1ec561daa493713ab83057c6a18383947f56c451 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Thu, 19 May 2022 18:24:54 -0400 Subject: Add more names and strings in good13 * native UTF-8 strings * names whose PDF and canonical syntax differ in both dictionary key positions and other positions For json, names are converted both as names and directly when used as dictionary keys. --- qpdf/qtest/qpdf/good13.out | 3 ++- qpdf/qtest/qpdf/good13.pdf | 11 ++++++----- qpdf/qtest/qpdf/good13.qdf | 28 +++++++++++++++++++--------- 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/qpdf/qtest/qpdf/good13.out b/qpdf/qtest/qpdf/good13.out index 7ff08b01..6df4bd7d 100644 --- a/qpdf/qtest/qpdf/good13.out +++ b/qpdf/qtest/qpdf/good13.out @@ -2,8 +2,9 @@ /QTest is a dictionary /hex strings is direct /indirect is indirect + /names is direct /nesting is direct /strings is direct unparse: 7 0 R -unparseResolved: << /hex#20strings [ (Potato) <01020300040560> (AB) ] /indirect 8 0 R /nesting << /a [ 1 2 << /x (y) >> [ (z) ] ] /b << / (legal) /a [ 1 2 ] >> >> /strings [ (one) <24a2> () (\(\)) (\() (\)) (a\f\b\t\r\nb) <410042> (a\nb) (a b) ] >> +unparseResolved: << /hex#20strings [ (Potato) <01020300040560> (AB) ] /indirect 8 0 R /names [ /nesting /hex#20strings /text#2fplain ] /nesting << /a [ 1 2 << /x (y) >> [ (z) ] ] /b << / (legal) /a [ 1 2 ] >> >> /strings [ (one) <24a2> () (\(\)) (\() (\)) (a\f\b\t\r\nb) (") ("") ("\("\)") <410042> (a\nb) (a b) ] >> test 1 done diff --git a/qpdf/qtest/qpdf/good13.pdf b/qpdf/qtest/qpdf/good13.pdf index 516774c5..89953222 100644 --- a/qpdf/qtest/qpdf/good13.pdf +++ b/qpdf/qtest/qpdf/good13.pdf @@ -1,4 +1,4 @@ -%PDF-1.3 +%PDF-2.0 1 0 obj << /Type /Catalog @@ -63,9 +63,9 @@ endobj 7 0 obj << - /strings [(one) ($\242) () (()) (\() (\)) (a\f\b\t\r\nb) (A\000B) (a + /strings [(one) ($\242) () (()) (\() (\)) (a\f\b\t\r\nb) (") ("") ("(")") (A\000B) (a b) (a \ -b)] +b) (π) (🥔)] /hex#20strings [<506F7461746f> <010 203 0004056> <41 42>] /indirect 8 0 R @@ -73,6 +73,7 @@ b)] /a [1 2 << /x (y) >> [(z)]] /b <> >> + /names [/n#65sting /hex#20strings /text#2fplain] >> endobj @@ -90,12 +91,12 @@ xref 0000000403 00000 n 0000000438 00000 n 0000000556 00000 n -0000000822 00000 n +0000000908 00000 n trailer << /Size 9 /Root 1 0 R /QTest 7 0 R >> startxref -846 +932 %%EOF diff --git a/qpdf/qtest/qpdf/good13.qdf b/qpdf/qtest/qpdf/good13.qdf index 36bd923a..297c35f3 100644 --- a/qpdf/qtest/qpdf/good13.qdf +++ b/qpdf/qtest/qpdf/good13.qdf @@ -1,4 +1,4 @@ -%PDF-1.3 +%PDF-2.0 %¿÷¢þ %QDF-1.0 @@ -19,6 +19,11 @@ endobj (AB) ] /indirect 4 0 R + /names [ + /nesting + /hex#20strings + /text#2fplain + ] /nesting << /a [ 1 @@ -46,9 +51,14 @@ endobj (\() (\)) (a\f\b\t\r\nb) + (") + ("") + ("\("\)") <410042> (a\nb) (a b) + + ] >> endobj @@ -134,13 +144,13 @@ xref 0000000000 65535 f 0000000052 00000 n 0000000133 00000 n -0000000576 00000 n -0000000675 00000 n -0000000736 00000 n -0000000978 00000 n -0000001077 00000 n -0000001123 00000 n -0000001268 00000 n +0000000710 00000 n +0000000809 00000 n +0000000870 00000 n +0000001112 00000 n +0000001211 00000 n +0000001257 00000 n +0000001402 00000 n trailer << /QTest 2 0 R /Root 1 0 R @@ -148,5 +158,5 @@ trailer << /ID [<31415926535897932384626433832795><31415926535897932384626433832795>] >> startxref -1303 +1437 %%EOF -- cgit v1.2.3-54-g00ecf