diff options
39 files changed, 1708 insertions, 0 deletions
diff --git a/testing/resources/pixel/endobj1.in b/testing/resources/pixel/endobj1.in new file mode 100644 index 0000000000..3e7f5e6bc5 --- /dev/null +++ b/testing/resources/pixel/endobj1.in @@ -0,0 +1,60 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 1: +% /Length identifies intended end of stream, despite embedded keywords. +% Both should render as text. +{{object 6 0}} << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj1.pdf b/testing/resources/pixel/endobj1.pdf new file mode 100644 index 0000000000..918e0a60a3 --- /dev/null +++ b/testing/resources/pixel/endobj1.pdf @@ -0,0 +1,70 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 1: +% /Length identifies intended end of stream, despite embedded keywords. +% Both should render as text. +6 0 obj << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000566 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +715 +%%EOF diff --git a/testing/resources/pixel/endobj10.in b/testing/resources/pixel/endobj10.in new file mode 100644 index 0000000000..d89132a97c --- /dev/null +++ b/testing/resources/pixel/endobj10.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 10: +% /Length identifies end of stream, and embedded endstream/endobj +% keyword to trip us up, but missing endstream keyword. +{{object 6 0}} << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endstream is not text) Tj +0 50 Td +/F2 13 Tf +(endobj is not text) Tj +ET +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj10.pdf b/testing/resources/pixel/endobj10.pdf new file mode 100644 index 0000000000..7d3f25239f --- /dev/null +++ b/testing/resources/pixel/endobj10.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 10: +% /Length identifies end of stream, and embedded endstream/endobj +% keyword to trip us up, but missing endstream keyword. +6 0 obj << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endstream is not text) Tj +0 50 Td +/F2 13 Tf +(endobj is not text) Tj +ET +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000587 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +722 +%%EOF diff --git a/testing/resources/pixel/endobj10_expected.pdf.0.png b/testing/resources/pixel/endobj10_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj10_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj11.in b/testing/resources/pixel/endobj11.in new file mode 100644 index 0000000000..6bccbe5f0e --- /dev/null +++ b/testing/resources/pixel/endobj11.in @@ -0,0 +1,65 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points past intended end of stream, with embedded keywords. +% Both should render as text. +{{object 6 0}} << + /Length 128 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj11.pdf b/testing/resources/pixel/endobj11.pdf new file mode 100644 index 0000000000..e72cff8698 --- /dev/null +++ b/testing/resources/pixel/endobj11.pdf @@ -0,0 +1,75 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points past intended end of stream, with embedded keywords. +% Both should render as text. +6 0 obj << + /Length 128 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000565 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +771 +%%EOF diff --git a/testing/resources/pixel/endobj11_expected.pdf.0.png b/testing/resources/pixel/endobj11_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj11_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj12.in b/testing/resources/pixel/endobj12.in new file mode 100644 index 0000000000..1a89b31650 --- /dev/null +++ b/testing/resources/pixel/endobj12.in @@ -0,0 +1,65 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points well past intended end of stream, with embedded keywords. +% Both should render as text. +{{object 6 0}} << + /Length 210 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj12.pdf b/testing/resources/pixel/endobj12.pdf new file mode 100644 index 0000000000..3d07ab52fb --- /dev/null +++ b/testing/resources/pixel/endobj12.pdf @@ -0,0 +1,75 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points well past intended end of stream, with embedded keywords. +% Both should render as text. +6 0 obj << + /Length 210 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000570 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +776 +%%EOF diff --git a/testing/resources/pixel/endobj12_expected.pdf.0.png b/testing/resources/pixel/endobj12_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj12_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj13.in b/testing/resources/pixel/endobj13.in new file mode 100644 index 0000000000..81623a2b03 --- /dev/null +++ b/testing/resources/pixel/endobj13.in @@ -0,0 +1,65 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points well past EOF, with embedded keywords. +% Both should render as text. +{{object 6 0}} << + /Length 1000 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj13.pdf b/testing/resources/pixel/endobj13.pdf new file mode 100644 index 0000000000..8193e53f56 --- /dev/null +++ b/testing/resources/pixel/endobj13.pdf @@ -0,0 +1,75 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 11: +% /Length points well past EOF, with embedded keywords. +% Both should render as text. +6 0 obj << + /Length 1000 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj + +% blah blah blah. +% blah blah blah. +% blah blah blah. + +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000551 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +758 +%%EOF diff --git a/testing/resources/pixel/endobj13_expected.pdf.0.png b/testing/resources/pixel/endobj13_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj13_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj1_expected.pdf.0.png b/testing/resources/pixel/endobj1_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..a044bb0c37 --- /dev/null +++ b/testing/resources/pixel/endobj1_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj2.in b/testing/resources/pixel/endobj2.in new file mode 100644 index 0000000000..341fe7edb3 --- /dev/null +++ b/testing/resources/pixel/endobj2.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 4: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the stream keyword. +{{object 6 0}} << + /Length 97 +>> +stream BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj2.pdf b/testing/resources/pixel/endobj2.pdf new file mode 100644 index 0000000000..6c5982a315 --- /dev/null +++ b/testing/resources/pixel/endobj2.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 4: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the stream keyword. +6 0 obj << + /Length 97 +>> +stream BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000576 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +725 +%%EOF diff --git a/testing/resources/pixel/endobj2_expected.pdf.0.png b/testing/resources/pixel/endobj2_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj2_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj3.in b/testing/resources/pixel/endobj3.in new file mode 100644 index 0000000000..11f5a99480 --- /dev/null +++ b/testing/resources/pixel/endobj3.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 3: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the endstream keyword. +{{object 6 0}} << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj3.pdf b/testing/resources/pixel/endobj3.pdf new file mode 100644 index 0000000000..65f3b1335d --- /dev/null +++ b/testing/resources/pixel/endobj3.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 3: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the endstream keyword. +6 0 obj << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000579 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +728 +%%EOF diff --git a/testing/resources/pixel/endobj3_expected.pdf.0.png b/testing/resources/pixel/endobj3_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..a044bb0c37 --- /dev/null +++ b/testing/resources/pixel/endobj3_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj4.in b/testing/resources/pixel/endobj4.in new file mode 100644 index 0000000000..a49a5c2775 --- /dev/null +++ b/testing/resources/pixel/endobj4.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 5: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the endobj keyword. +{{object 6 0}} << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +endobj {{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj4.pdf b/testing/resources/pixel/endobj4.pdf new file mode 100644 index 0000000000..3758492eb0 --- /dev/null +++ b/testing/resources/pixel/endobj4.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 5: +% /Length identifies intended end of stream, but whitespace rather than +% newline following the endobj keyword. +6 0 obj << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endstream +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000576 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +718 +%%EOF diff --git a/testing/resources/pixel/endobj4_expected.pdf.0.png b/testing/resources/pixel/endobj4_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..a044bb0c37 --- /dev/null +++ b/testing/resources/pixel/endobj4_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj5.in b/testing/resources/pixel/endobj5.in new file mode 100644 index 0000000000..dce87954ec --- /dev/null +++ b/testing/resources/pixel/endobj5.in @@ -0,0 +1,60 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 5: +% /Length incorrectly identifies middle of stream, no confusing +% keywords to trip us up. +{{object 6 0}} << + /Length 50 +>> +stream +BT +20 50 Td +/F1 12 Tf +(xxxxxx is text) Tj +0 50 Td +/F2 13 Tf +(yyyyyyyyy after bad /Length) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj5.pdf b/testing/resources/pixel/endobj5.pdf new file mode 100644 index 0000000000..02c99f3d54 --- /dev/null +++ b/testing/resources/pixel/endobj5.pdf @@ -0,0 +1,70 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 5: +% /Length incorrectly identifies middle of stream, no confusing +% keywords to trip us up. +6 0 obj << + /Length 50 +>> +stream +BT +20 50 Td +/F1 12 Tf +(xxxxxx is text) Tj +0 50 Td +/F2 13 Tf +(yyyyyyyyy after bad /Length) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000554 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +701 +%%EOF diff --git a/testing/resources/pixel/endobj5_expected.pdf.0.png b/testing/resources/pixel/endobj5_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..87f2a9b32d --- /dev/null +++ b/testing/resources/pixel/endobj5_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj6.in b/testing/resources/pixel/endobj6.in new file mode 100644 index 0000000000..53f546f519 --- /dev/null +++ b/testing/resources/pixel/endobj6.in @@ -0,0 +1,60 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 6: +% /Length incorrectly identifies middle of stream, and confusing +% keywords to trip us up. Should only render |endobj| as text. +{{object 6 0}} << + /Length 50 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream after bad /Length) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj6.pdf b/testing/resources/pixel/endobj6.pdf new file mode 100644 index 0000000000..1e0006e99c --- /dev/null +++ b/testing/resources/pixel/endobj6.pdf @@ -0,0 +1,70 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 6: +% /Length incorrectly identifies middle of stream, and confusing +% keywords to trip us up. Should only render |endobj| as text. +6 0 obj << + /Length 50 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream after bad /Length) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000593 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +740 +%%EOF diff --git a/testing/resources/pixel/endobj6_expected.pdf.0.png b/testing/resources/pixel/endobj6_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj6_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj7.in b/testing/resources/pixel/endobj7.in new file mode 100644 index 0000000000..747514fa80 --- /dev/null +++ b/testing/resources/pixel/endobj7.in @@ -0,0 +1,60 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 7: +% /Length identifies intended end of stream, but endstream/endobj +% keywords swapped. Should render |endobj| and |endstream| as text. +{{object 6 0}} << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endobj +endstream +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj7.pdf b/testing/resources/pixel/endobj7.pdf new file mode 100644 index 0000000000..787b61ab51 --- /dev/null +++ b/testing/resources/pixel/endobj7.pdf @@ -0,0 +1,70 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 7: +% /Length identifies intended end of stream, but endstream/endobj +% keywords swapped. Should render |endobj| and |endstream| as text. +6 0 obj << + /Length 97 +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is text per /Length) Tj +ET +endobj +endstream +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000598 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +747 +%%EOF diff --git a/testing/resources/pixel/endobj7_expected.pdf.0.png b/testing/resources/pixel/endobj7_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj7_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj8.in b/testing/resources/pixel/endobj8.in new file mode 100644 index 0000000000..66892e239a --- /dev/null +++ b/testing/resources/pixel/endobj8.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 8: +% No /Length to identify end of stream, but embedded endobj/endstream +% keywords to trip us up. Should only render |endobj| as text. +{{object 6 0}} << +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is not text) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj8.pdf b/testing/resources/pixel/endobj8.pdf new file mode 100644 index 0000000000..26f70adbb9 --- /dev/null +++ b/testing/resources/pixel/endobj8.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 8: +% No /Length to identify end of stream, but embedded endobj/endstream +% keywords to trip us up. Should only render |endobj| as text. +6 0 obj << +>> +stream +BT +20 50 Td +/F1 12 Tf +(endobj is text) Tj +0 50 Td +/F2 13 Tf +(endstream is not text) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000598 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +726 +%%EOF diff --git a/testing/resources/pixel/endobj8_expected.pdf.0.png b/testing/resources/pixel/endobj8_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj8_expected.pdf.0.png diff --git a/testing/resources/pixel/endobj9.in b/testing/resources/pixel/endobj9.in new file mode 100644 index 0000000000..fb156faa9f --- /dev/null +++ b/testing/resources/pixel/endobj9.in @@ -0,0 +1,59 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R +>> +{{object 2 0}} << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +{{object 4 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +{{object 5 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 9: +% No /Length to identify end of stream, but embedded endstream/endobj +% keyword to trip us up. Should render nothing as text. +{{object 6 0}} << +>> +stream +BT +20 50 Td +/F1 12 Tf +(endstream is not text) Tj +0 50 Td +/F2 13 Tf +(endobj is not text) Tj +ET +endstream +endobj +{{xref}} +trailer << + /Size 6 + /Root 1 0 R +>> +{{startxref}} +%%EOF diff --git a/testing/resources/pixel/endobj9.pdf b/testing/resources/pixel/endobj9.pdf new file mode 100644 index 0000000000..b08595631b --- /dev/null +++ b/testing/resources/pixel/endobj9.pdf @@ -0,0 +1,69 @@ +%PDF-1.7 +% ò¤ô +1 0 obj << + /Type /Catalog + /Pages 2 0 R +>> +2 0 obj << + /Type /Pages + /MediaBox [ 0 0 200 200 ] + /Count 1 + /Kids [ 3 0 R ] +>> +endobj +3 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font << + /F1 4 0 R + /F2 5 0 R + >> + >> + /Contents 6 0 R +>> +endobj +4 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Times-Roman +>> +endobj +5 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Helvetica +>> +endobj +% Case 9: +% No /Length to identify end of stream, but embedded endstream/endobj +% keyword to trip us up. Should render nothing as text. +6 0 obj << +>> +stream +BT +20 50 Td +/F1 12 Tf +(endstream is not text) Tj +0 50 Td +/F2 13 Tf +(endobj is not text) Tj +ET +endstream +endobj +xref +0 7 +0000000000 65535 f +0000000015 00000 n +0000000061 00000 n +0000000154 00000 n +0000000296 00000 n +0000000374 00000 n +0000000591 00000 n +trailer << + /Size 6 + /Root 1 0 R +>> +startxref +723 +%%EOF diff --git a/testing/resources/pixel/endobj9_expected.pdf.0.png b/testing/resources/pixel/endobj9_expected.pdf.0.png Binary files differnew file mode 100644 index 0000000000..3edcc2db89 --- /dev/null +++ b/testing/resources/pixel/endobj9_expected.pdf.0.png |