aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog11
-rw-r--r--TODO5
-rw-r--r--include/qpdf/QPDFJob.hh2
-rw-r--r--include/qpdf/QPDFWriter.hh4
-rw-r--r--libqpdf/QPDFJob.cc2
-rw-r--r--libqpdf/QPDFWriter.cc9
-rw-r--r--manual/release-notes.rst12
-rw-r--r--qpdf/qtest/qpdf/01_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/02_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/03_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/04_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/05_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/06_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/07_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/08_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/09_split-exp.zdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/10_split-exp.zdfbin756 -> 756 bytes
-rw-r--r--qpdf/qtest/qpdf/11_split-exp.zdfbin756 -> 756 bytes
-rw-r--r--qpdf/qtest/qpdf/direct-dr-out.pdf2
-rw-r--r--qpdf/qtest/qpdf/dr-with-indirect-item-out.pdf2
-rw-r--r--qpdf/qtest/qpdf/fields-pages-out.pdfbin43173 -> 43173 bytes
-rw-r--r--qpdf/qtest/qpdf/fields-split-1.pdfbin7221 -> 7221 bytes
-rw-r--r--qpdf/qtest/qpdf/fields-split-2.pdfbin36507 -> 36507 bytes
-rw-r--r--qpdf/qtest/qpdf/indirect-r-arg.out2
-rw-r--r--qpdf/qtest/qpdf/job-json-copy-attachments.pdfbin2527 -> 2527 bytes
-rw-r--r--qpdf/qtest/qpdf/job-json-empty-input.pdfbin2546 -> 2546 bytes
-rw-r--r--qpdf/qtest/qpdf/job-json-underlay-overlay-password.pdfbin2098 -> 2098 bytes
-rw-r--r--qpdf/qtest/qpdf/labels-split-01-06.pdf2
-rw-r--r--qpdf/qtest/qpdf/labels-split-07-11.pdf2
-rw-r--r--qpdf/qtest/qpdf/merge-implicit-ranges.pdf2
-rw-r--r--qpdf/qtest/qpdf/merge-multiple-labels.pdfbin3452 -> 3452 bytes
-rw-r--r--qpdf/qtest/qpdf/merge-three-files-1.pdfbin8699 -> 8699 bytes
-rw-r--r--qpdf/qtest/qpdf/merge-three-files-2.pdfbin6196 -> 6196 bytes
-rw-r--r--qpdf/qtest/qpdf/obj0-check.out2
-rw-r--r--qpdf/qtest/qpdf/overlay-copy-annotations-p1.pdf2
-rw-r--r--qpdf/qtest/qpdf/overlay-copy-annotations-p2.pdf2
-rw-r--r--qpdf/qtest/qpdf/overlay-copy-annotations-p5.pdf2
-rw-r--r--qpdf/qtest/qpdf/overlay-copy-annotations-p6.pdf2
-rw-r--r--qpdf/qtest/qpdf/overlay-copy-annotations.pdf2
-rw-r--r--qpdf/qtest/qpdf/remove-labels.pdfbin3349 -> 3349 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-01.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-02.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-03.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-04.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-05.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-06.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-07.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-08.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-09.Pdfbin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-1bin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-1.pdfbin899 -> 899 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-10.Pdfbin756 -> 756 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-11.Pdfbin756 -> 756 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-2bin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-3bin755 -> 755 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-4bin799 -> 799 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-group-01-05.pdfbin2050 -> 2050 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-group-06-10.pdfbin2051 -> 2051 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp-group-11-11.pdfbin756 -> 756 bytes
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_012
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_022
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_032
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_042
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_052
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_062
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_072
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_082
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_092
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_102
-rw-r--r--qpdf/qtest/qpdf/split-exp.zdf_112
-rw-r--r--qpdf/qtest/qpdf/uo-7.pdf2
71 files changed, 63 insertions, 30 deletions
diff --git a/ChangeLog b/ChangeLog
index a55a97e8..81b4603c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,22 @@
2022-02-08 Jay Berkenbilt <ejb@ql.org>
+ * Bug fix: when splitting pages with --split-pages or selecting
+ pages with --pages, set the output PDF version to the maximum of
+ all the input PDF versions. This is a fix to QPDFJob. If you are
+ creating output PDF files yourself from multiple inputs, you will
+ need to code the same thing. The new PDFVersion object, its
+ updateIfGreater() method, and the new QPDF and QPDFWriter methods
+ described below make this very easy to do. Fixes #610.
+
* Add new class PDFVersion for more convenient comparison of PDF
version numbers from the %!PDF header.
* Add QPDF::getVersionAsPDFVersion() to return the PDF version and
extension together as a PDFVersion object instead of a string.
+ * Add a QPDFWriter::setMinimumPDFVersion() that takes a PDFVersion
+ object.
+
2022-02-06 Jay Berkenbilt <ejb@ql.org>
* Pl_Buffer and QPDFWriter: add getBufferSharedPointer(), which
diff --git a/TODO b/TODO
index 89576b9a..a768637b 100644
--- a/TODO
+++ b/TODO
@@ -1,8 +1,3 @@
-10.6
-====
-
-* https://github.com/qpdf/qpdf/issues/610
-
Next
====
diff --git a/include/qpdf/QPDFJob.hh b/include/qpdf/QPDFJob.hh
index 799a34fd..9524fdbf 100644
--- a/include/qpdf/QPDFJob.hh
+++ b/include/qpdf/QPDFJob.hh
@@ -26,6 +26,7 @@
#include <qpdf/Constants.h>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFPageObjectHelper.hh>
+#include <qpdf/PDFVersion.hh>
#include <memory>
#include <string>
@@ -587,6 +588,7 @@ class QPDFJob
int flatten_annotations_required;
int flatten_annotations_forbidden;
bool generate_appearances;
+ PDFVersion max_input_version;
std::string min_version;
std::string force_version;
bool show_npages;
diff --git a/include/qpdf/QPDFWriter.hh b/include/qpdf/QPDFWriter.hh
index 97d190a7..1f8fc360 100644
--- a/include/qpdf/QPDFWriter.hh
+++ b/include/qpdf/QPDFWriter.hh
@@ -42,11 +42,11 @@
#include <qpdf/QPDFObjectHandle.hh>
#include <qpdf/QPDFObjGen.hh>
#include <qpdf/QPDFXRefEntry.hh>
-
#include <qpdf/Pl_Buffer.hh>
#include <qpdf/PointerHolder.hh>
#include <qpdf/Pipeline.hh>
#include <qpdf/Buffer.hh>
+#include <qpdf/PDFVersion.hh>
class QPDF;
class Pl_Count;
@@ -265,6 +265,8 @@ class QPDFWriter
// streams are used.
QPDF_DLL
void setMinimumPDFVersion(std::string const&, int extension_level = 0);
+ QPDF_DLL
+ void setMinimumPDFVersion(PDFVersion const&);
// Force the PDF version of the output file to be a given version.
// Use of this function may create PDF files that will not work
diff --git a/libqpdf/QPDFJob.cc b/libqpdf/QPDFJob.cc
index fab552fc..5886d6ba 100644
--- a/libqpdf/QPDFJob.cc
+++ b/libqpdf/QPDFJob.cc
@@ -2047,6 +2047,7 @@ QPDFJob::doProcessOnce(
{
fn(pdf.get(), password);
}
+ this->m->max_input_version.updateIfGreater(pdf->getVersionAsPDFVersion());
return pdf;
}
@@ -3472,6 +3473,7 @@ QPDFJob::setWriterOptions(QPDF& pdf, QPDFWriter& w)
{
w.setObjectStreamMode(m->object_stream_mode);
}
+ w.setMinimumPDFVersion(this->m->max_input_version);
if (! m->min_version.empty())
{
std::string version;
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index bb568623..c8a5bb18 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -297,6 +297,15 @@ QPDFWriter::setMinimumPDFVersion(std::string const& version,
}
void
+QPDFWriter::setMinimumPDFVersion(PDFVersion const& v)
+{
+ std::string version;
+ int extension_level;
+ v.getVersion(version, extension_level);
+ setMinimumPDFVersion(version, extension_level);
+}
+
+void
QPDFWriter::forcePDFVersion(std::string const& version,
int extension_level)
{
diff --git a/manual/release-notes.rst b/manual/release-notes.rst
index dfd42855..b12e5e7f 100644
--- a/manual/release-notes.rst
+++ b/manual/release-notes.rst
@@ -148,6 +148,14 @@ For a detailed list of changes, please see the file
embedded NUL characters. Thanks to M. Holger for the
contribution.
+ - New ``PDFVersion`` class for representing a PDF version number
+ with the ability to compare and order PDF versions. Methods
+ ``QPDF::getVersionAsPDFVersion`` and a new version of
+ ``QPDFWriter::setMinimumPDFVersion`` use it. This makes it
+ easier to create an output file whose PDF version is the maximum
+ of the versions across all the input files that contributed to
+ it.
+
- The ``JSON`` object in the qpdf library has been enhanced to
include a parser and the ability to get values out of the
``JSON`` object. Previously it was a write-only interface. Even
@@ -181,6 +189,10 @@ For a detailed list of changes, please see the file
- Some characters were not correctly translated from PDF doc
encoding to Unicode.
+ - When splitting or combining pages, ensure that all output files
+ have a PDF version greater than or equal to the maximum version
+ of all the input files.
+
10.5.0: December 21, 2021
- Packaging changes
diff --git a/qpdf/qtest/qpdf/01_split-exp.zdf b/qpdf/qtest/qpdf/01_split-exp.zdf
index 7c37942f..f28359cd 100644
--- a/qpdf/qtest/qpdf/01_split-exp.zdf
+++ b/qpdf/qtest/qpdf/01_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/02_split-exp.zdf b/qpdf/qtest/qpdf/02_split-exp.zdf
index cced06c3..0c0d088c 100644
--- a/qpdf/qtest/qpdf/02_split-exp.zdf
+++ b/qpdf/qtest/qpdf/02_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/03_split-exp.zdf b/qpdf/qtest/qpdf/03_split-exp.zdf
index 7206ff55..964bfb71 100644
--- a/qpdf/qtest/qpdf/03_split-exp.zdf
+++ b/qpdf/qtest/qpdf/03_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/04_split-exp.zdf b/qpdf/qtest/qpdf/04_split-exp.zdf
index d8a652ef..28a46191 100644
--- a/qpdf/qtest/qpdf/04_split-exp.zdf
+++ b/qpdf/qtest/qpdf/04_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/05_split-exp.zdf b/qpdf/qtest/qpdf/05_split-exp.zdf
index 498596f8..aea6342b 100644
--- a/qpdf/qtest/qpdf/05_split-exp.zdf
+++ b/qpdf/qtest/qpdf/05_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/06_split-exp.zdf b/qpdf/qtest/qpdf/06_split-exp.zdf
index 016d83a9..ae27f4c3 100644
--- a/qpdf/qtest/qpdf/06_split-exp.zdf
+++ b/qpdf/qtest/qpdf/06_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/07_split-exp.zdf b/qpdf/qtest/qpdf/07_split-exp.zdf
index bb1ed0ba..7aa16f04 100644
--- a/qpdf/qtest/qpdf/07_split-exp.zdf
+++ b/qpdf/qtest/qpdf/07_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/08_split-exp.zdf b/qpdf/qtest/qpdf/08_split-exp.zdf
index bd6b7f22..7b47747c 100644
--- a/qpdf/qtest/qpdf/08_split-exp.zdf
+++ b/qpdf/qtest/qpdf/08_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/09_split-exp.zdf b/qpdf/qtest/qpdf/09_split-exp.zdf
index 1b63f675..4f9f46b7 100644
--- a/qpdf/qtest/qpdf/09_split-exp.zdf
+++ b/qpdf/qtest/qpdf/09_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/10_split-exp.zdf b/qpdf/qtest/qpdf/10_split-exp.zdf
index f3d209a4..525b1a9d 100644
--- a/qpdf/qtest/qpdf/10_split-exp.zdf
+++ b/qpdf/qtest/qpdf/10_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/11_split-exp.zdf b/qpdf/qtest/qpdf/11_split-exp.zdf
index 158f9c78..40ff70b0 100644
--- a/qpdf/qtest/qpdf/11_split-exp.zdf
+++ b/qpdf/qtest/qpdf/11_split-exp.zdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/direct-dr-out.pdf b/qpdf/qtest/qpdf/direct-dr-out.pdf
index ea1a227c..65fbada8 100644
--- a/qpdf/qtest/qpdf/direct-dr-out.pdf
+++ b/qpdf/qtest/qpdf/direct-dr-out.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/dr-with-indirect-item-out.pdf b/qpdf/qtest/qpdf/dr-with-indirect-item-out.pdf
index c6f5c88b..19a6d6f7 100644
--- a/qpdf/qtest/qpdf/dr-with-indirect-item-out.pdf
+++ b/qpdf/qtest/qpdf/dr-with-indirect-item-out.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
1 0 obj
<< /AcroForm 2 0 R /Pages 3 0 R /Type /Catalog >>
diff --git a/qpdf/qtest/qpdf/fields-pages-out.pdf b/qpdf/qtest/qpdf/fields-pages-out.pdf
index 56d70a9e..01364e69 100644
--- a/qpdf/qtest/qpdf/fields-pages-out.pdf
+++ b/qpdf/qtest/qpdf/fields-pages-out.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/fields-split-1.pdf b/qpdf/qtest/qpdf/fields-split-1.pdf
index d7479e67..c625922f 100644
--- a/qpdf/qtest/qpdf/fields-split-1.pdf
+++ b/qpdf/qtest/qpdf/fields-split-1.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/fields-split-2.pdf b/qpdf/qtest/qpdf/fields-split-2.pdf
index 034c1a89..35a0fb87 100644
--- a/qpdf/qtest/qpdf/fields-split-2.pdf
+++ b/qpdf/qtest/qpdf/fields-split-2.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/indirect-r-arg.out b/qpdf/qtest/qpdf/indirect-r-arg.out
index ab912e1d..d5c6a3ca 100644
--- a/qpdf/qtest/qpdf/indirect-r-arg.out
+++ b/qpdf/qtest/qpdf/indirect-r-arg.out
@@ -1,7 +1,7 @@
-checking indirect-r-arg.pdf
WARNING: indirect-r-arg.pdf (object 1 0, offset 76): unknown token while reading object; treating as string
WARNING: indirect-r-arg.pdf (object 1 0, offset 62): expected dictionary key but found non-name object; inserting key /QPDFFake1
WARNING: indirect-r-arg.pdf (object 1 0, offset 62): expected dictionary key but found non-name object; inserting key /QPDFFake2
+checking indirect-r-arg.pdf
PDF Version: 1.3
File is not encrypted
File is not linearized
diff --git a/qpdf/qtest/qpdf/job-json-copy-attachments.pdf b/qpdf/qtest/qpdf/job-json-copy-attachments.pdf
index ab49f624..446b15ef 100644
--- a/qpdf/qtest/qpdf/job-json-copy-attachments.pdf
+++ b/qpdf/qtest/qpdf/job-json-copy-attachments.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/job-json-empty-input.pdf b/qpdf/qtest/qpdf/job-json-empty-input.pdf
index b93a9113..9f2653b5 100644
--- a/qpdf/qtest/qpdf/job-json-empty-input.pdf
+++ b/qpdf/qtest/qpdf/job-json-empty-input.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/job-json-underlay-overlay-password.pdf b/qpdf/qtest/qpdf/job-json-underlay-overlay-password.pdf
index 31c0e1f8..8296bd3d 100644
--- a/qpdf/qtest/qpdf/job-json-underlay-overlay-password.pdf
+++ b/qpdf/qtest/qpdf/job-json-underlay-overlay-password.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/labels-split-01-06.pdf b/qpdf/qtest/qpdf/labels-split-01-06.pdf
index 1058eba1..aee0a94b 100644
--- a/qpdf/qtest/qpdf/labels-split-01-06.pdf
+++ b/qpdf/qtest/qpdf/labels-split-01-06.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/labels-split-07-11.pdf b/qpdf/qtest/qpdf/labels-split-07-11.pdf
index 42120fed..be18191d 100644
--- a/qpdf/qtest/qpdf/labels-split-07-11.pdf
+++ b/qpdf/qtest/qpdf/labels-split-07-11.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/merge-implicit-ranges.pdf b/qpdf/qtest/qpdf/merge-implicit-ranges.pdf
index be17bf46..08c652d9 100644
--- a/qpdf/qtest/qpdf/merge-implicit-ranges.pdf
+++ b/qpdf/qtest/qpdf/merge-implicit-ranges.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
1 0 obj
<< /PageLabels << /Nums [ 0 << /St 1 >> 21 << /P () /St 1 >> 23 << /S /r /St 1 >> 28 << /P () /St 1 >> 30 << /S /r /St 6 >> 32 << /P () /St 1 >> 33 << /S /D /St 2 >> 36 << /S /D /St 6 >> 40 << /P () /St 1 >> 41 << /S /D /St 12 >> 43 << /S /D /St 16059 >> 44 << /S /r /St 50 >> 50 << /S /r /St 54 >> ] >> /Pages 2 0 R /Type /Catalog >>
diff --git a/qpdf/qtest/qpdf/merge-multiple-labels.pdf b/qpdf/qtest/qpdf/merge-multiple-labels.pdf
index d767e760..f2b13862 100644
--- a/qpdf/qtest/qpdf/merge-multiple-labels.pdf
+++ b/qpdf/qtest/qpdf/merge-multiple-labels.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/merge-three-files-1.pdf b/qpdf/qtest/qpdf/merge-three-files-1.pdf
index 42e84a22..138ccba5 100644
--- a/qpdf/qtest/qpdf/merge-three-files-1.pdf
+++ b/qpdf/qtest/qpdf/merge-three-files-1.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/merge-three-files-2.pdf b/qpdf/qtest/qpdf/merge-three-files-2.pdf
index 2d472ac6..fa9cfaac 100644
--- a/qpdf/qtest/qpdf/merge-three-files-2.pdf
+++ b/qpdf/qtest/qpdf/merge-three-files-2.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/obj0-check.out b/qpdf/qtest/qpdf/obj0-check.out
index d4a33eb6..785131d4 100644
--- a/qpdf/qtest/qpdf/obj0-check.out
+++ b/qpdf/qtest/qpdf/obj0-check.out
@@ -1,7 +1,7 @@
-checking obj0.pdf
WARNING: obj0.pdf: file is damaged
WARNING: obj0.pdf (object 1 0, offset 77): expected n n obj
WARNING: obj0.pdf: Attempting to reconstruct cross-reference table
+checking obj0.pdf
PDF Version: 1.3
File is not encrypted
File is not linearized
diff --git a/qpdf/qtest/qpdf/overlay-copy-annotations-p1.pdf b/qpdf/qtest/qpdf/overlay-copy-annotations-p1.pdf
index 54ff4d45..f1907117 100644
--- a/qpdf/qtest/qpdf/overlay-copy-annotations-p1.pdf
+++ b/qpdf/qtest/qpdf/overlay-copy-annotations-p1.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/overlay-copy-annotations-p2.pdf b/qpdf/qtest/qpdf/overlay-copy-annotations-p2.pdf
index 62b3fa34..4ed2c002 100644
--- a/qpdf/qtest/qpdf/overlay-copy-annotations-p2.pdf
+++ b/qpdf/qtest/qpdf/overlay-copy-annotations-p2.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/overlay-copy-annotations-p5.pdf b/qpdf/qtest/qpdf/overlay-copy-annotations-p5.pdf
index d7861336..fac19fb2 100644
--- a/qpdf/qtest/qpdf/overlay-copy-annotations-p5.pdf
+++ b/qpdf/qtest/qpdf/overlay-copy-annotations-p5.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/overlay-copy-annotations-p6.pdf b/qpdf/qtest/qpdf/overlay-copy-annotations-p6.pdf
index b9154b81..2e661246 100644
--- a/qpdf/qtest/qpdf/overlay-copy-annotations-p6.pdf
+++ b/qpdf/qtest/qpdf/overlay-copy-annotations-p6.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/overlay-copy-annotations.pdf b/qpdf/qtest/qpdf/overlay-copy-annotations.pdf
index 31794383..4a5c19d5 100644
--- a/qpdf/qtest/qpdf/overlay-copy-annotations.pdf
+++ b/qpdf/qtest/qpdf/overlay-copy-annotations.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.6
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/remove-labels.pdf b/qpdf/qtest/qpdf/remove-labels.pdf
index 838f4cbb..f9d5b803 100644
--- a/qpdf/qtest/qpdf/remove-labels.pdf
+++ b/qpdf/qtest/qpdf/remove-labels.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-01.Pdf b/qpdf/qtest/qpdf/split-exp-01.Pdf
index 7c37942f..f28359cd 100644
--- a/qpdf/qtest/qpdf/split-exp-01.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-01.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-02.Pdf b/qpdf/qtest/qpdf/split-exp-02.Pdf
index cced06c3..0c0d088c 100644
--- a/qpdf/qtest/qpdf/split-exp-02.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-02.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-03.Pdf b/qpdf/qtest/qpdf/split-exp-03.Pdf
index 7206ff55..964bfb71 100644
--- a/qpdf/qtest/qpdf/split-exp-03.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-03.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-04.Pdf b/qpdf/qtest/qpdf/split-exp-04.Pdf
index d8a652ef..28a46191 100644
--- a/qpdf/qtest/qpdf/split-exp-04.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-04.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-05.Pdf b/qpdf/qtest/qpdf/split-exp-05.Pdf
index 498596f8..aea6342b 100644
--- a/qpdf/qtest/qpdf/split-exp-05.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-05.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-06.Pdf b/qpdf/qtest/qpdf/split-exp-06.Pdf
index 016d83a9..ae27f4c3 100644
--- a/qpdf/qtest/qpdf/split-exp-06.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-06.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-07.Pdf b/qpdf/qtest/qpdf/split-exp-07.Pdf
index bb1ed0ba..7aa16f04 100644
--- a/qpdf/qtest/qpdf/split-exp-07.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-07.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-08.Pdf b/qpdf/qtest/qpdf/split-exp-08.Pdf
index bd6b7f22..7b47747c 100644
--- a/qpdf/qtest/qpdf/split-exp-08.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-08.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-09.Pdf b/qpdf/qtest/qpdf/split-exp-09.Pdf
index 1b63f675..4f9f46b7 100644
--- a/qpdf/qtest/qpdf/split-exp-09.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-09.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-1 b/qpdf/qtest/qpdf/split-exp-1
index 7c37942f..f28359cd 100644
--- a/qpdf/qtest/qpdf/split-exp-1
+++ b/qpdf/qtest/qpdf/split-exp-1
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-1.pdf b/qpdf/qtest/qpdf/split-exp-1.pdf
index 77a38bc6..2b256b71 100644
--- a/qpdf/qtest/qpdf/split-exp-1.pdf
+++ b/qpdf/qtest/qpdf/split-exp-1.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-10.Pdf b/qpdf/qtest/qpdf/split-exp-10.Pdf
index f3d209a4..525b1a9d 100644
--- a/qpdf/qtest/qpdf/split-exp-10.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-10.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-11.Pdf b/qpdf/qtest/qpdf/split-exp-11.Pdf
index 158f9c78..40ff70b0 100644
--- a/qpdf/qtest/qpdf/split-exp-11.Pdf
+++ b/qpdf/qtest/qpdf/split-exp-11.Pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-2 b/qpdf/qtest/qpdf/split-exp-2
index cced06c3..0c0d088c 100644
--- a/qpdf/qtest/qpdf/split-exp-2
+++ b/qpdf/qtest/qpdf/split-exp-2
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-3 b/qpdf/qtest/qpdf/split-exp-3
index 7206ff55..964bfb71 100644
--- a/qpdf/qtest/qpdf/split-exp-3
+++ b/qpdf/qtest/qpdf/split-exp-3
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-4 b/qpdf/qtest/qpdf/split-exp-4
index b8c692ed..27b18243 100644
--- a/qpdf/qtest/qpdf/split-exp-4
+++ b/qpdf/qtest/qpdf/split-exp-4
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-group-01-05.pdf b/qpdf/qtest/qpdf/split-exp-group-01-05.pdf
index 318b3814..c4cedeb7 100644
--- a/qpdf/qtest/qpdf/split-exp-group-01-05.pdf
+++ b/qpdf/qtest/qpdf/split-exp-group-01-05.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-group-06-10.pdf b/qpdf/qtest/qpdf/split-exp-group-06-10.pdf
index 7f8b652f..bed88dcd 100644
--- a/qpdf/qtest/qpdf/split-exp-group-06-10.pdf
+++ b/qpdf/qtest/qpdf/split-exp-group-06-10.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp-group-11-11.pdf b/qpdf/qtest/qpdf/split-exp-group-11-11.pdf
index 158f9c78..40ff70b0 100644
--- a/qpdf/qtest/qpdf/split-exp-group-11-11.pdf
+++ b/qpdf/qtest/qpdf/split-exp-group-11-11.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_01 b/qpdf/qtest/qpdf/split-exp.zdf_01
index 31a145aa..5386b04c 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_01
+++ b/qpdf/qtest/qpdf/split-exp.zdf_01
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_02 b/qpdf/qtest/qpdf/split-exp.zdf_02
index d70facb1..1b973989 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_02
+++ b/qpdf/qtest/qpdf/split-exp.zdf_02
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_03 b/qpdf/qtest/qpdf/split-exp.zdf_03
index fbb491b5..699c292f 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_03
+++ b/qpdf/qtest/qpdf/split-exp.zdf_03
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_04 b/qpdf/qtest/qpdf/split-exp.zdf_04
index d0ab509e..d1e522c7 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_04
+++ b/qpdf/qtest/qpdf/split-exp.zdf_04
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_05 b/qpdf/qtest/qpdf/split-exp.zdf_05
index a2d861d6..1eb11730 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_05
+++ b/qpdf/qtest/qpdf/split-exp.zdf_05
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_06 b/qpdf/qtest/qpdf/split-exp.zdf_06
index 1d5b6e56..bb75c304 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_06
+++ b/qpdf/qtest/qpdf/split-exp.zdf_06
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_07 b/qpdf/qtest/qpdf/split-exp.zdf_07
index 10a72379..5ce3f254 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_07
+++ b/qpdf/qtest/qpdf/split-exp.zdf_07
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_08 b/qpdf/qtest/qpdf/split-exp.zdf_08
index 9ccb696e..c7a07f56 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_08
+++ b/qpdf/qtest/qpdf/split-exp.zdf_08
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_09 b/qpdf/qtest/qpdf/split-exp.zdf_09
index 82706bc1..c53618b2 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_09
+++ b/qpdf/qtest/qpdf/split-exp.zdf_09
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_10 b/qpdf/qtest/qpdf/split-exp.zdf_10
index 5deab6d7..4fb1f90c 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_10
+++ b/qpdf/qtest/qpdf/split-exp.zdf_10
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/split-exp.zdf_11 b/qpdf/qtest/qpdf/split-exp.zdf_11
index 3a3105d5..d9eb9ccd 100644
--- a/qpdf/qtest/qpdf/split-exp.zdf_11
+++ b/qpdf/qtest/qpdf/split-exp.zdf_11
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0
diff --git a/qpdf/qtest/qpdf/uo-7.pdf b/qpdf/qtest/qpdf/uo-7.pdf
index 4cabeaf7..08a0e506 100644
--- a/qpdf/qtest/qpdf/uo-7.pdf
+++ b/qpdf/qtest/qpdf/uo-7.pdf
@@ -1,4 +1,4 @@
-%PDF-1.3
+%PDF-1.4
%¿÷¢þ
%QDF-1.0