aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2009-03-09 17:27:13 +0100
committerJay Berkenbilt <ejb@ql.org>2009-03-09 17:27:13 +0100
commitf62bec3ee53a377548ec197423efc20d4f4dc206 (patch)
tree0058163a191363e8a5a7b1879206050bef48b579
parentaa92e1ddb2bc18b45f9d2a09235beaa9da9ac006 (diff)
downloadqpdf-f62bec3ee53a377548ec197423efc20d4f4dc206.tar.zst
update test suite to handle original object ID comments
git-svn-id: svn+q:///qpdf/trunk@663 71b93d88-0707-0410-a8cf-f5a4172ac649
-rw-r--r--ChangeLog10
-rw-r--r--include/qpdf/QPDFWriter.hh7
-rw-r--r--libqpdf/QPDFWriter.cc19
-rw-r--r--manual/qpdf-manual.xml11
-rw-r--r--qpdf/qpdf.cc10
-rw-r--r--qpdf/qtest/qpdf.test43
-rw-r--r--qpdf/qtest/qpdf/good1.qdf22
-rw-r--r--qpdf/qtest/qpdf/good10.qdf22
-rw-r--r--qpdf/qtest/qpdf/good11.qdf22
-rw-r--r--qpdf/qtest/qpdf/good12.qdf27
-rw-r--r--qpdf/qtest/qpdf/good13.qdf25
-rw-r--r--qpdf/qtest/qpdf/good14.qdf42
-rw-r--r--qpdf/qtest/qpdf/good15.qdf22
-rw-r--r--qpdf/qtest/qpdf/good16.qdfbin1106 -> 1249 bytes
-rw-r--r--qpdf/qtest/qpdf/good17.qdf125
-rw-r--r--qpdf/qtest/qpdf/good18.qdf254
-rw-r--r--qpdf/qtest/qpdf/good19.qdfbin1105 -> 1248 bytes
-rw-r--r--qpdf/qtest/qpdf/good2.qdf22
-rw-r--r--qpdf/qtest/qpdf/good20.qdf671
-rw-r--r--qpdf/qtest/qpdf/good3.qdf22
-rw-r--r--qpdf/qtest/qpdf/good4.qdf22
-rw-r--r--qpdf/qtest/qpdf/good5.qdf22
-rw-r--r--qpdf/qtest/qpdf/good6.qdf22
-rw-r--r--qpdf/qtest/qpdf/good7-not-normalized.qdf22
-rw-r--r--qpdf/qtest/qpdf/good7.qdf22
-rw-r--r--qpdf/qtest/qpdf/good8.qdf22
-rw-r--r--qpdf/qtest/qpdf/good9.qdf22
-rw-r--r--qpdf/qtest/qpdf/test4-1.qdf34
-rw-r--r--qpdf/qtest/qpdf/test4-4.qdf34
29 files changed, 948 insertions, 650 deletions
diff --git a/ChangeLog b/ChangeLog
index ff2b959b..a3df4b19 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-03-09 Jay Berkenbilt <ejb@ql.org>
+
+ * libqpdf/Pl_LZWDecoder.cc: adjust LZWDecoder full table
+ detection, now having been able to adequately test boundary
+ conditions both and with and without early code change. Also
+ compared implementation with other LZW decoders.
+
2009-03-08 Jay Berkenbilt <ejb@ql.org>
* qpdf/fix-qdf (write_ostream): Adjust offsets while writing
@@ -10,6 +17,9 @@
* libqpdf/QPDFWriter.cc (QPDFWriter::writeObject): In QDF mode,
write a comment to the QDF file before each object that indicates
the object ID of the corresponding object from the original file.
+ Add --no-original-object-ids flag to qpdf and
+ setSuppressOriginalObjectIDs() method to QPDFWriter to turn this
+ behavior off.
* libqpdf/QPDF.cc (QPDF::pipeStreamData): Issue a warning instead
of failing if there is a problem found while decoding stream.
diff --git a/include/qpdf/QPDFWriter.hh b/include/qpdf/QPDFWriter.hh
index 217115e8..c354ec30 100644
--- a/include/qpdf/QPDFWriter.hh
+++ b/include/qpdf/QPDFWriter.hh
@@ -74,6 +74,12 @@ class QPDFWriter
// suites.
void setStaticID(bool);
+ // Suppress inclusion of comments indicating original object IDs
+ // when writing QDF files. This can also be useful for testing,
+ // particularly when using comparison of two qdf files to
+ // determine whether two PDF files have identical content.
+ void setSuppressOriginalObjectIDs(bool);
+
// Preserve encryption. The default is true unless prefilering,
// content normalization, or qdf mode has been selected in which
// case encryption is never preserved. Encryption is also not
@@ -208,6 +214,7 @@ class QPDFWriter
stream_data_e stream_data_mode;
bool qdf_mode;
bool static_id;
+ bool suppress_original_object_ids;
bool direct_stream_lengths;
bool encrypted;
bool preserve_encryption;
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index 18f420b5..acaf52a8 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -32,6 +32,7 @@ QPDFWriter::QPDFWriter(QPDF& pdf, char const* filename) :
stream_data_mode(s_compress),
qdf_mode(false),
static_id(false),
+ suppress_original_object_ids(false),
direct_stream_lengths(true),
encrypted(false),
preserve_encryption(true),
@@ -105,6 +106,12 @@ QPDFWriter::setStaticID(bool val)
}
void
+QPDFWriter::setSuppressOriginalObjectIDs(bool val)
+{
+ this->suppress_original_object_ids = val;
+}
+
+void
QPDFWriter::setPreserveEncryption(bool val)
{
this->preserve_encryption = val;
@@ -932,9 +939,13 @@ QPDFWriter::writeObjectStream(QPDFObjectHandle object)
{
writeString("%% Object stream: object " +
QUtil::int_to_string(new_obj) + ", index " +
- QUtil::int_to_string(count) +
- "; original object ID: " +
- QUtil::int_to_string(obj) + "\n");
+ QUtil::int_to_string(count));
+ if (! this->suppress_original_object_ids)
+ {
+ writeString("; original object ID: " +
+ QUtil::int_to_string(obj));
+ }
+ writeString("\n");
}
if (pass == 1)
{
@@ -1028,7 +1039,7 @@ QPDFWriter::writeObject(QPDFObjectHandle object, int object_stream_index)
}
if (object_stream_index == -1)
{
- if (this->qdf_mode)
+ if (this->qdf_mode && (! this->suppress_original_object_ids))
{
writeString("%% Original object ID: " +
QUtil::int_to_string(object.getObjectID()) + " " +
diff --git a/manual/qpdf-manual.xml b/manual/qpdf-manual.xml
index 6259bcfa..aae12588 100644
--- a/manual/qpdf-manual.xml
+++ b/manual/qpdf-manual.xml
@@ -645,6 +645,17 @@ make
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>--no-original-object-ids</option></term>
+ <listitem>
+ <para>
+ Suppresses inclusion of original object ID comments in QDF
+ files. This can be useful when generating QDF files for test
+ purposes, particularly when comparing them to determine
+ whether two PDF files have identical content.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>-show-encryption</option></term>
<listitem>
<para>
diff --git a/qpdf/qpdf.cc b/qpdf/qpdf.cc
index 7429881d..2202ae74 100644
--- a/qpdf/qpdf.cc
+++ b/qpdf/qpdf.cc
@@ -127,6 +127,7 @@ These options can be useful for digging into PDF files or for use in\n\
automated test suites for software that uses the qpdf library.\n\
\n\
--static-id generate static /ID: FOR TESTING ONLY!\n\
+--no-original-object-ids suppress original object ID comments in qdf mode\n\
--show-encryption quickly show encryption parameters\n\
--check-linearization check file integrity and linearization status\n\
--show-linearization check and show all linearization data\n\
@@ -503,6 +504,7 @@ int main(int argc, char* argv[])
bool qdf_mode = false;
bool static_id = false;
+ bool suppress_original_object_id = false;
bool show_encryption = false;
bool check_linearization = false;
bool show_linearization = false;
@@ -637,6 +639,10 @@ int main(int argc, char* argv[])
{
static_id = true;
}
+ else if (strcmp(arg, "no-original-object-ids") == 0)
+ {
+ suppress_original_object_id = true;
+ }
else if (strcmp(arg, "show-encryption") == 0)
{
show_encryption = true;
@@ -921,6 +927,10 @@ int main(int argc, char* argv[])
{
w.setStaticID(true);
}
+ if (suppress_original_object_id)
+ {
+ w.setSuppressOriginalObjectIDs(true);
+ }
if (encrypt)
{
if (keylen == 40)
diff --git a/qpdf/qtest/qpdf.test b/qpdf/qtest/qpdf.test
index 2b59b70d..a3b5f176 100644
--- a/qpdf/qtest/qpdf.test
+++ b/qpdf/qtest/qpdf.test
@@ -181,7 +181,8 @@ for (my $i = 1; $i <= scalar(@badfiles); ++$i)
# This heifer file was a real file that contained errors that Acrobat
# Reader can recover. We can recover it too.
$td->runtest("recover heifer file",
- {$td->COMMAND => "qpdf --static-id -qdf heifer.pdf a.pdf"},
+ {$td->COMMAND => "qpdf --static-id --no-original-object-ids" .
+ " -qdf heifer.pdf a.pdf"},
{$td->FILE => "heifer.out",
$td->EXIT_STATUS => 3},
$td->NORMALIZE_NEWLINES);
@@ -195,7 +196,8 @@ $td->runtest("check output",
# mostly there.
$td->runtest("good replaced page contents",
{$td->COMMAND =>
- "qpdf --static-id -qdf append-page-content.pdf a.pdf"},
+ "qpdf --static-id -qdf --no-original-object-ids" .
+ " append-page-content.pdf a.pdf"},
{$td->STRING => "",
$td->EXIT_STATUS => 0},
$td->NORMALIZE_NEWLINES);
@@ -203,7 +205,8 @@ $td->runtest("check output",
{$td->FILE => "a.pdf"},
{$td->FILE => "append-page-content-good.qdf"});
$td->runtest("damaged replaced page contents",
- {$td->COMMAND => "qpdf --static-id -qdf" .
+ {$td->COMMAND =>
+ "qpdf --static-id -qdf --no-original-object-ids" .
" append-page-content-damaged.pdf a.pdf"},
{$td->FILE => "append-page-content-damaged.out",
$td->EXIT_STATUS => 3},
@@ -295,7 +298,7 @@ for (my $n = 16; $n <= 19; ++$n)
foreach my $qdf ('-qdf', '', '-encrypt "" x 128 --')
{
# 4 tests + 1 compare_pdfs * 36 cases
- # 2 tests + 1 compare_pdfs * 12 cases
+ # 2 additional tests * 12 cases
$td->runtest("object stream mode",
{$td->COMMAND =>
"qpdf --static-id $flags $qdf $in a.pdf"},
@@ -313,25 +316,17 @@ for (my $n = 16; $n <= 19; ++$n)
}
$td->runtest("convert to qdf",
{$td->COMMAND =>
- "qpdf --static-id -qdf -decrypt" .
+ "qpdf --static-id --no-original-object-ids" .
+ " -qdf -decrypt" .
" -object-streams=disable $in a.qdf"},
{$td->STRING => "",
$td->EXIT_STATUS => 0});
$td->runtest("convert output to qdf",
{$td->COMMAND =>
- "qpdf --static-id -qdf" .
- " -object-streams=disable a.pdf b.qdf"},
+ "qpdf --static-id --no-original-object-ids" .
+ " -qdf -object-streams=disable a.pdf b.qdf"},
{$td->STRING => "",
$td->EXIT_STATUS => 0});
- # XXX The comparison is broken because of the new original
- # object comments. We need a script that compares qpdfs
- # by normalizing those comments (like replacing the object
- # IDs with nnn) and then diffs. That will work here and
- # in some of the other failure cases. For the rest where
- # we're actually checking the qdf itself, we will need to
- # store the new qdf files with the object IDs. That can't
- # be done blindly -- we need to make sure the output is
- # correct!
$td->runtest("compare files",
{$td->FILE => "a.qdf"},
{$td->FILE => "b.qdf"});
@@ -515,12 +510,12 @@ foreach my $base (@linearized_files)
# that their qdf files are identical. The next two tests have the
# same expected output files and different input files.
check_pdf("modified",
- "qpdf --static-id --qdf delete-and-reuse.pdf",
- "delete-and-reuse.qdf",
+ "qpdf --static-id --qdf --no-original-object-ids" .
+ " delete-and-reuse.pdf", "delete-and-reuse.qdf",
0);
check_pdf("linearized and modified",
- "qpdf --static-id --qdf lin-delete-and-reuse.pdf",
- "delete-and-reuse.qdf", # not lin-delete-and-reuse.qdf
+ "qpdf --static-id --qdf --no-original-object-ids" .
+ " lin-delete-and-reuse.pdf", "delete-and-reuse.qdf", # same output
0);
$td->runtest("check linearized and modified",
@@ -648,7 +643,7 @@ foreach my $d (@encrypted_files)
# Test writing to stdout
$td->runtest("decrypt $file",
{$td->COMMAND =>
- "qpdf --static-id -qdf" .
+ "qpdf --static-id -qdf --no-original-object-ids" .
" --password=\"$pass\" enc-$file.pdf -" .
" > $file.enc"},
{$td->STRING => "",
@@ -680,7 +675,8 @@ foreach my $d (@encrypted_files)
my $eflags = "-encrypt \"$upass\" \"$opass\" $bits $xeflags --";
$td->runtest("encrypt $file",
{$td->COMMAND =>
- "qpdf --static-id -qdf $eflags $file.enc $file.enc2"},
+ "qpdf --static-id --no-original-object-ids -qdf" .
+ " $eflags $file.enc $file.enc2"},
{$td->STRING => "",
$td->EXIT_STATUS => 0});
$td->runtest("check /P",
@@ -692,7 +688,8 @@ foreach my $d (@encrypted_files)
$td->NORMALIZE_NEWLINES);
$td->runtest("decrypt again",
{$td->COMMAND =>
- "qpdf --static-id -qdf --password=\"$pass\"" .
+ "qpdf --static-id --no-original-object-ids -qdf" .
+ " --password=\"$pass\"" .
" $file.enc2 $file.enc3"},
{$td->STRING => "",
$td->EXIT_STATUS => 0});
diff --git a/qpdf/qtest/qpdf/good1.qdf b/qpdf/qtest/qpdf/good1.qdf
index 976ed2b2..7b33f199 100644
--- a/qpdf/qtest/qpdf/good1.qdf
+++ b/qpdf/qtest/qpdf/good1.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,18 +84,18 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/Root 1 0 R
/Size 8
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good10.qdf b/qpdf/qtest/qpdf/good10.qdf
index c2e7a50c..0835c516 100644
--- a/qpdf/qtest/qpdf/good10.qdf
+++ b/qpdf/qtest/qpdf/good10.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest [
1
@@ -96,5 +102,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good11.qdf b/qpdf/qtest/qpdf/good11.qdf
index 3d673b04..e92d6dad 100644
--- a/qpdf/qtest/qpdf/good11.qdf
+++ b/qpdf/qtest/qpdf/good11.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest <<
/a (a)
@@ -94,5 +100,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good12.qdf b/qpdf/qtest/qpdf/good12.qdf
index 107f3d04..542d79b1 100644
--- a/qpdf/qtest/qpdf/good12.qdf
+++ b/qpdf/qtest/qpdf/good12.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 4 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 7 0
2 0 obj
<<
/Length 3 0 R
@@ -24,6 +26,7 @@ endobj
153
endobj
+%% Original object ID: 2 0
4 0 obj
<<
/Count 1
@@ -35,6 +38,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
5 0 obj
<<
/Contents 6 0 R
@@ -56,6 +60,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
6 0 obj
<<
/Length 7 0 R
@@ -73,6 +78,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
8 0 obj
<<
/BaseFont /Helvetica
@@ -83,6 +89,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
9 0 obj
[
/PDF
@@ -93,15 +100,15 @@ endobj
xref
0 10
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000287 00000 n
-0000000307 00000 n
-0000000389 00000 n
-0000000604 00000 n
-0000000703 00000 n
-0000000722 00000 n
-0000000840 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000341 00000 n
+0000000388 00000 n
+0000000497 00000 n
+0000000739 00000 n
+0000000838 00000 n
+0000000884 00000 n
+0000001029 00000 n
trailer <<
/QTest 2 0 R
/Root 1 0 R
@@ -109,5 +116,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-875
+1064
%%EOF
diff --git a/qpdf/qtest/qpdf/good13.qdf b/qpdf/qtest/qpdf/good13.qdf
index c2f50c0f..5ad87bb8 100644
--- a/qpdf/qtest/qpdf/good13.qdf
+++ b/qpdf/qtest/qpdf/good13.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 3 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 7 0
2 0 obj
<<
/hex#20strings [
@@ -51,6 +53,7 @@ endobj
>>
endobj
+%% Original object ID: 2 0
3 0 obj
<<
/Count 1
@@ -62,6 +65,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
4 0 obj
<<
/Contents 5 0 R
@@ -83,6 +87,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
5 0 obj
<<
/Length 6 0 R
@@ -100,6 +105,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
7 0 obj
<<
/BaseFont /Helvetica
@@ -110,6 +116,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
8 0 obj
[
/PDF
@@ -120,14 +127,14 @@ endobj
xref
0 9
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000495 00000 n
-0000000577 00000 n
-0000000792 00000 n
-0000000891 00000 n
-0000000910 00000 n
-0000001028 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000576 00000 n
+0000000685 00000 n
+0000000927 00000 n
+0000001026 00000 n
+0000001072 00000 n
+0000001217 00000 n
trailer <<
/QTest 2 0 R
/Root 1 0 R
@@ -135,5 +142,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-1063
+1252
%%EOF
diff --git a/qpdf/qtest/qpdf/good14.qdf b/qpdf/qtest/qpdf/good14.qdf
index 07ac0240..4ae42537 100644
--- a/qpdf/qtest/qpdf/good14.qdf
+++ b/qpdf/qtest/qpdf/good14.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 10 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 7 0
2 0 obj
<<
/Length 3 0 R
@@ -33,6 +35,7 @@ endobj
181
endobj
+%% Original object ID: 8 0
4 0 obj
<<
/Length 5 0 R
@@ -62,6 +65,7 @@ endobj
385
endobj
+%% Original object ID: 10 0
6 0 obj
<<
/Length 7 0 R
@@ -75,6 +79,7 @@ endobj
40
endobj
+%% Original object ID: 11 0
8 0 obj
<<
/Length 9 0 R
@@ -89,6 +94,7 @@ endobj
5
endobj
+%% Original object ID: 2 0
10 0 obj
<<
/Count 1
@@ -100,6 +106,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
11 0 obj
<<
/Contents 12 0 R
@@ -121,6 +128,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
12 0 obj
<<
/Length 13 0 R
@@ -138,6 +146,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
14 0 obj
<<
/BaseFont /Helvetica
@@ -148,6 +157,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
15 0 obj
[
/PDF
@@ -158,21 +168,21 @@ endobj
xref
0 16
0000000000 65535 f
-0000000025 00000 n
-0000000080 00000 n
-0000000338 00000 n
-0000000358 00000 n
-0000000798 00000 n
-0000000818 00000 n
-0000000913 00000 n
-0000000932 00000 n
-0000001014 00000 n
-0000001032 00000 n
-0000001116 00000 n
-0000001336 00000 n
-0000001437 00000 n
-0000001457 00000 n
-0000001576 00000 n
+0000000052 00000 n
+0000000134 00000 n
+0000000392 00000 n
+0000000439 00000 n
+0000000879 00000 n
+0000000927 00000 n
+0000001022 00000 n
+0000001069 00000 n
+0000001151 00000 n
+0000001196 00000 n
+0000001307 00000 n
+0000001554 00000 n
+0000001655 00000 n
+0000001702 00000 n
+0000001848 00000 n
trailer <<
/QStreams [
2 0 R
@@ -185,5 +195,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-1612
+1884
%%EOF
diff --git a/qpdf/qtest/qpdf/good15.qdf b/qpdf/qtest/qpdf/good15.qdf
index c60469c1..d57850c1 100644
--- a/qpdf/qtest/qpdf/good15.qdf
+++ b/qpdf/qtest/qpdf/good15.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -59,6 +63,7 @@ endobj
43
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -69,6 +74,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -79,13 +85,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000474 00000 n
-0000000493 00000 n
-0000000611 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000582 00000 n
+0000000628 00000 n
+0000000773 00000 n
trailer <<
/QTest /oink
/Root 1 0 R
@@ -93,5 +99,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-646
+808
%%EOF
diff --git a/qpdf/qtest/qpdf/good16.qdf b/qpdf/qtest/qpdf/good16.qdf
index b98326ae..d6b78a05 100644
--- a/qpdf/qtest/qpdf/good16.qdf
+++ b/qpdf/qtest/qpdf/good16.qdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/good17.qdf b/qpdf/qtest/qpdf/good17.qdf
index ddd3a5ce..747f329d 100644
--- a/qpdf/qtest/qpdf/good17.qdf
+++ b/qpdf/qtest/qpdf/good17.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Outlines 3 0 R
@@ -15,29 +16,29 @@ endobj
2 0 obj
<<
/Type /ObjStm
- /Length 2179
+ /Length 2424
/N 10
- /First 102
+ /First 126
>>
stream
3 0
-4 100
-5 335
-6 520
-7 718
-8 1044
-9 1262
-10 1508
-11 1715
-12 1922
-%% Object stream: object 3, index 0
+4 124
+5 383
+6 592
+7 814
+8 1165
+9 1408
+10 1679
+11 1911
+12 2143
+%% Object stream: object 3, index 0; original object ID: 95
<<
/Count 6
/First 4 0 R
/Last 5 0 R
/Type /Outlines
>>
-%% Object stream: object 4, index 1
+%% Object stream: object 4, index 1; original object ID: 96
<<
/Count 4
/Dest [
@@ -54,7 +55,7 @@ stream
/Title (Isís 1 -> 5: /XYZ null null null)
/Type /Outline
>>
-%% Object stream: object 5, index 2
+%% Object stream: object 5, index 2; original object ID: 97
<<
/Dest [
19 0 R
@@ -68,7 +69,7 @@ stream
/Title (Trepak 2 -> 15: /XYZ 66 756 3)
/Type /Outline
>>
-%% Object stream: object 6, index 3
+%% Object stream: object 6, index 3; original object ID: 98
<<
/Count -3
/Dest [
@@ -82,7 +83,7 @@ stream
/Title (Amanda 1.1 -> 11: /Fit)
/Type /Outline
>>
-%% Object stream: object 7, index 4
+%% Object stream: object 7, index 4; original object ID: 99
<<
/Count 2
/Dest [
@@ -97,7 +98,7 @@ stream
/Title <feff00530061006e00640079002000f703a303b103bd03b403b900f700200031002e00320020002d003e002000310033003a0020002f00460069007400480020003700390032>
/Type /Outline
>>
-%% Object stream: object 8, index 5
+%% Object stream: object 8, index 5; original object ID: 100
<<
/Count -2
/Dest [
@@ -112,7 +113,7 @@ stream
/Title (Isosicle 1.1.1 -> 12: /FitV 100)
/Type /Outline
>>
-%% Object stream: object 9, index 6
+%% Object stream: object 9, index 6; original object ID: 101
<<
/Count 1
/Dest [
@@ -129,7 +130,7 @@ stream
/Title (Isosicle 1.1.2 -> 12: /XYZ null null null)
/Type /Outline
>>
-%% Object stream: object 10, index 7
+%% Object stream: object 10, index 7; original object ID: 102
<<
/Dest [
23 0 R
@@ -143,7 +144,7 @@ stream
/Title (Isosicle 1.1.1.1 -> 18: /XYZ null null null)
/Type /Outline
>>
-%% Object stream: object 11, index 8
+%% Object stream: object 11, index 8; original object ID: 103
<<
/Dest [
24 0 R
@@ -157,7 +158,7 @@ stream
/Title (Isosicle 1.1.1.2 -> 19: /XYZ null null null)
/Type /Outline
>>
-%% Object stream: object 12, index 9
+%% Object stream: object 12, index 9; original object ID: 104
<<
/Dest [
25 0 R
@@ -176,16 +177,16 @@ endobj
13 0 obj
<<
/Type /ObjStm
- /Length 989
+ /Length 1064
/N 3
- /First 56
+ /First 81
/Extends 2 0 R
>>
stream
14 0
-15 213
-16 418
-%% Object stream: object 14, index 0
+15 238
+16 468
+%% Object stream: object 14, index 0; original object ID: 105
<<
/Dest [
26 0 R
@@ -200,7 +201,7 @@ stream
/Title (Trepsichord 1.2.1 -> 1: /FitR 66 714 180 770)
/Type /Outline
>>
-%% Object stream: object 15, index 1
+%% Object stream: object 15, index 1; original object ID: 106
<<
/Dest [
27 0 R
@@ -214,7 +215,7 @@ stream
/Title (Trepsicle 1.2.2 -> 0: /XYZ null null null)
/Type /Outline
>>
-%% Object stream: object 16, index 2
+%% Object stream: object 16, index 2; original object ID: 107
<<
/Nums [
0
@@ -278,6 +279,7 @@ stream
endstream
endobj
+%% Original object ID: 2 0
17 0 obj
<<
/Count 30
@@ -318,6 +320,7 @@ endobj
endobj
%% Page 6
+%% Original object ID: 8 0
18 0 obj
<<
/Contents 48 0 R
@@ -339,6 +342,7 @@ endobj
endobj
%% Page 16
+%% Original object ID: 18 0
19 0 obj
<<
/Contents 52 0 R
@@ -360,6 +364,7 @@ endobj
endobj
%% Page 12
+%% Original object ID: 14 0
20 0 obj
<<
/Contents 54 0 R
@@ -381,6 +386,7 @@ endobj
endobj
%% Page 14
+%% Original object ID: 16 0
21 0 obj
<<
/Contents 56 0 R
@@ -402,6 +408,7 @@ endobj
endobj
%% Page 13
+%% Original object ID: 15 0
22 0 obj
<<
/Contents 58 0 R
@@ -423,6 +430,7 @@ endobj
endobj
%% Page 19
+%% Original object ID: 21 0
23 0 obj
<<
/Contents 60 0 R
@@ -444,6 +452,7 @@ endobj
endobj
%% Page 20
+%% Original object ID: 22 0
24 0 obj
<<
/Contents 62 0 R
@@ -465,6 +474,7 @@ endobj
endobj
%% Page 23
+%% Original object ID: 25 0
25 0 obj
<<
/Contents 64 0 R
@@ -486,6 +496,7 @@ endobj
endobj
%% Page 2
+%% Original object ID: 4 0
26 0 obj
<<
/Contents 66 0 R
@@ -507,6 +518,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
27 0 obj
<<
/Contents 68 0 R
@@ -528,6 +540,7 @@ endobj
endobj
%% Page 3
+%% Original object ID: 5 0
28 0 obj
<<
/Contents 70 0 R
@@ -549,6 +562,7 @@ endobj
endobj
%% Page 4
+%% Original object ID: 6 0
29 0 obj
<<
/Contents 72 0 R
@@ -570,6 +584,7 @@ endobj
endobj
%% Page 5
+%% Original object ID: 7 0
30 0 obj
<<
/Contents 74 0 R
@@ -591,6 +606,7 @@ endobj
endobj
%% Page 7
+%% Original object ID: 9 0
31 0 obj
<<
/Contents 76 0 R
@@ -612,6 +628,7 @@ endobj
endobj
%% Page 8
+%% Original object ID: 10 0
32 0 obj
<<
/Contents 78 0 R
@@ -633,6 +650,7 @@ endobj
endobj
%% Page 9
+%% Original object ID: 11 0
33 0 obj
<<
/Contents 80 0 R
@@ -654,6 +672,7 @@ endobj
endobj
%% Page 10
+%% Original object ID: 12 0
34 0 obj
<<
/Contents 82 0 R
@@ -675,6 +694,7 @@ endobj
endobj
%% Page 11
+%% Original object ID: 13 0
35 0 obj
<<
/Contents 84 0 R
@@ -696,6 +716,7 @@ endobj
endobj
%% Page 15
+%% Original object ID: 17 0
36 0 obj
<<
/Contents 86 0 R
@@ -717,6 +738,7 @@ endobj
endobj
%% Page 17
+%% Original object ID: 19 0
37 0 obj
<<
/Contents 88 0 R
@@ -738,6 +760,7 @@ endobj
endobj
%% Page 18
+%% Original object ID: 20 0
38 0 obj
<<
/Contents 90 0 R
@@ -759,6 +782,7 @@ endobj
endobj
%% Page 21
+%% Original object ID: 23 0
39 0 obj
<<
/Contents 92 0 R
@@ -780,6 +804,7 @@ endobj
endobj
%% Page 22
+%% Original object ID: 24 0
40 0 obj
<<
/Contents 94 0 R
@@ -801,6 +826,7 @@ endobj
endobj
%% Page 24
+%% Original object ID: 26 0
41 0 obj
<<
/Contents 96 0 R
@@ -822,6 +848,7 @@ endobj
endobj
%% Page 25
+%% Original object ID: 27 0
42 0 obj
<<
/Contents 98 0 R
@@ -843,6 +870,7 @@ endobj
endobj
%% Page 26
+%% Original object ID: 28 0
43 0 obj
<<
/Contents 100 0 R
@@ -864,6 +892,7 @@ endobj
endobj
%% Page 27
+%% Original object ID: 29 0
44 0 obj
<<
/Contents 102 0 R
@@ -885,6 +914,7 @@ endobj
endobj
%% Page 28
+%% Original object ID: 30 0
45 0 obj
<<
/Contents 104 0 R
@@ -906,6 +936,7 @@ endobj
endobj
%% Page 29
+%% Original object ID: 31 0
46 0 obj
<<
/Contents 106 0 R
@@ -927,6 +958,7 @@ endobj
endobj
%% Page 30
+%% Original object ID: 32 0
47 0 obj
<<
/Contents 108 0 R
@@ -948,6 +980,7 @@ endobj
endobj
%% Contents for page 6
+%% Original object ID: 45 0
48 0 obj
<<
/Length 49 0 R
@@ -965,6 +998,7 @@ endobj
46
endobj
+%% Original object ID: 35 0
50 0 obj
<<
/BaseFont /Helvetica
@@ -975,6 +1009,7 @@ endobj
>>
endobj
+%% Original object ID: 36 0
51 0 obj
[
/PDF
@@ -983,6 +1018,7 @@ endobj
endobj
%% Contents for page 16
+%% Original object ID: 65 0
52 0 obj
<<
/Length 53 0 R
@@ -1001,6 +1037,7 @@ endobj
endobj
%% Contents for page 12
+%% Original object ID: 57 0
54 0 obj
<<
/Length 55 0 R
@@ -1019,6 +1056,7 @@ endobj
endobj
%% Contents for page 14
+%% Original object ID: 61 0
56 0 obj
<<
/Length 57 0 R
@@ -1037,6 +1075,7 @@ endobj
endobj
%% Contents for page 13
+%% Original object ID: 59 0
58 0 obj
<<
/Length 59 0 R
@@ -1055,6 +1094,7 @@ endobj
endobj
%% Contents for page 19
+%% Original object ID: 71 0
60 0 obj
<<
/Length 61 0 R
@@ -1073,6 +1113,7 @@ endobj
endobj
%% Contents for page 20
+%% Original object ID: 73 0
62 0 obj
<<
/Length 63 0 R
@@ -1091,6 +1132,7 @@ endobj
endobj
%% Contents for page 23
+%% Original object ID: 79 0
64 0 obj
<<
/Length 65 0 R
@@ -1109,6 +1151,7 @@ endobj
endobj
%% Contents for page 2
+%% Original object ID: 37 0
66 0 obj
<<
/Length 67 0 R
@@ -1127,6 +1170,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 33 0
68 0 obj
<<
/Length 69 0 R
@@ -1145,6 +1189,7 @@ endobj
endobj
%% Contents for page 3
+%% Original object ID: 39 0
70 0 obj
<<
/Length 71 0 R
@@ -1163,6 +1208,7 @@ endobj
endobj
%% Contents for page 4
+%% Original object ID: 41 0
72 0 obj
<<
/Length 73 0 R
@@ -1181,6 +1227,7 @@ endobj
endobj
%% Contents for page 5
+%% Original object ID: 43 0
74 0 obj
<<
/Length 75 0 R
@@ -1199,6 +1246,7 @@ endobj
endobj
%% Contents for page 7
+%% Original object ID: 47 0
76 0 obj
<<
/Length 77 0 R
@@ -1217,6 +1265,7 @@ endobj
endobj
%% Contents for page 8
+%% Original object ID: 49 0
78 0 obj
<<
/Length 79 0 R
@@ -1235,6 +1284,7 @@ endobj
endobj
%% Contents for page 9
+%% Original object ID: 51 0
80 0 obj
<<
/Length 81 0 R
@@ -1253,6 +1303,7 @@ endobj
endobj
%% Contents for page 10
+%% Original object ID: 53 0
82 0 obj
<<
/Length 83 0 R
@@ -1271,6 +1322,7 @@ endobj
endobj
%% Contents for page 11
+%% Original object ID: 55 0
84 0 obj
<<
/Length 85 0 R
@@ -1289,6 +1341,7 @@ endobj
endobj
%% Contents for page 15
+%% Original object ID: 63 0
86 0 obj
<<
/Length 87 0 R
@@ -1307,6 +1360,7 @@ endobj
endobj
%% Contents for page 17
+%% Original object ID: 67 0
88 0 obj
<<
/Length 89 0 R
@@ -1325,6 +1379,7 @@ endobj
endobj
%% Contents for page 18
+%% Original object ID: 69 0
90 0 obj
<<
/Length 91 0 R
@@ -1343,6 +1398,7 @@ endobj
endobj
%% Contents for page 21
+%% Original object ID: 75 0
92 0 obj
<<
/Length 93 0 R
@@ -1361,6 +1417,7 @@ endobj
endobj
%% Contents for page 22
+%% Original object ID: 77 0
94 0 obj
<<
/Length 95 0 R
@@ -1379,6 +1436,7 @@ endobj
endobj
%% Contents for page 24
+%% Original object ID: 81 0
96 0 obj
<<
/Length 97 0 R
@@ -1397,6 +1455,7 @@ endobj
endobj
%% Contents for page 25
+%% Original object ID: 83 0
98 0 obj
<<
/Length 99 0 R
@@ -1415,6 +1474,7 @@ endobj
endobj
%% Contents for page 26
+%% Original object ID: 85 0
100 0 obj
<<
/Length 101 0 R
@@ -1433,6 +1493,7 @@ endobj
endobj
%% Contents for page 27
+%% Original object ID: 87 0
102 0 obj
<<
/Length 103 0 R
@@ -1451,6 +1512,7 @@ endobj
endobj
%% Contents for page 28
+%% Original object ID: 89 0
104 0 obj
<<
/Length 105 0 R
@@ -1469,6 +1531,7 @@ endobj
endobj
%% Contents for page 29
+%% Original object ID: 91 0
106 0 obj
<<
/Length 107 0 R
@@ -1487,6 +1550,7 @@ endobj
endobj
%% Contents for page 30
+%% Original object ID: 93 0
108 0 obj
<<
/Length 109 0 R
@@ -1514,10 +1578,11 @@ endobj
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
stream
-
+
+~
endstream
endobj
startxref
-14730
+16834
%%EOF
diff --git a/qpdf/qtest/qpdf/good18.qdf b/qpdf/qtest/qpdf/good18.qdf
index 58e17b82..b60b43a9 100644
--- a/qpdf/qtest/qpdf/good18.qdf
+++ b/qpdf/qtest/qpdf/good18.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/PageMode /UseOutlines
@@ -10,6 +11,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 30
@@ -50,6 +52,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 33 0 R
@@ -71,6 +74,7 @@ endobj
endobj
%% Page 2
+%% Original object ID: 4 0
4 0 obj
<<
/Contents 37 0 R
@@ -92,6 +96,7 @@ endobj
endobj
%% Page 3
+%% Original object ID: 5 0
5 0 obj
<<
/Contents 39 0 R
@@ -113,6 +118,7 @@ endobj
endobj
%% Page 4
+%% Original object ID: 6 0
6 0 obj
<<
/Contents 41 0 R
@@ -134,6 +140,7 @@ endobj
endobj
%% Page 5
+%% Original object ID: 7 0
7 0 obj
<<
/Contents 43 0 R
@@ -155,6 +162,7 @@ endobj
endobj
%% Page 6
+%% Original object ID: 8 0
8 0 obj
<<
/Contents 45 0 R
@@ -176,6 +184,7 @@ endobj
endobj
%% Page 7
+%% Original object ID: 9 0
9 0 obj
<<
/Contents 47 0 R
@@ -197,6 +206,7 @@ endobj
endobj
%% Page 8
+%% Original object ID: 10 0
10 0 obj
<<
/Contents 49 0 R
@@ -218,6 +228,7 @@ endobj
endobj
%% Page 9
+%% Original object ID: 11 0
11 0 obj
<<
/Contents 51 0 R
@@ -239,6 +250,7 @@ endobj
endobj
%% Page 10
+%% Original object ID: 12 0
12 0 obj
<<
/Contents 53 0 R
@@ -260,6 +272,7 @@ endobj
endobj
%% Page 11
+%% Original object ID: 13 0
13 0 obj
<<
/Contents 55 0 R
@@ -281,6 +294,7 @@ endobj
endobj
%% Page 12
+%% Original object ID: 14 0
14 0 obj
<<
/Contents 57 0 R
@@ -302,6 +316,7 @@ endobj
endobj
%% Page 13
+%% Original object ID: 15 0
15 0 obj
<<
/Contents 59 0 R
@@ -323,6 +338,7 @@ endobj
endobj
%% Page 14
+%% Original object ID: 16 0
16 0 obj
<<
/Contents 61 0 R
@@ -344,6 +360,7 @@ endobj
endobj
%% Page 15
+%% Original object ID: 17 0
17 0 obj
<<
/Contents 63 0 R
@@ -365,6 +382,7 @@ endobj
endobj
%% Page 16
+%% Original object ID: 18 0
18 0 obj
<<
/Contents 65 0 R
@@ -386,6 +404,7 @@ endobj
endobj
%% Page 17
+%% Original object ID: 19 0
19 0 obj
<<
/Contents 67 0 R
@@ -407,6 +426,7 @@ endobj
endobj
%% Page 18
+%% Original object ID: 20 0
20 0 obj
<<
/Contents 69 0 R
@@ -428,6 +448,7 @@ endobj
endobj
%% Page 19
+%% Original object ID: 21 0
21 0 obj
<<
/Contents 71 0 R
@@ -449,6 +470,7 @@ endobj
endobj
%% Page 20
+%% Original object ID: 22 0
22 0 obj
<<
/Contents 73 0 R
@@ -470,6 +492,7 @@ endobj
endobj
%% Page 21
+%% Original object ID: 23 0
23 0 obj
<<
/Contents 75 0 R
@@ -491,6 +514,7 @@ endobj
endobj
%% Page 22
+%% Original object ID: 24 0
24 0 obj
<<
/Contents 77 0 R
@@ -512,6 +536,7 @@ endobj
endobj
%% Page 23
+%% Original object ID: 25 0
25 0 obj
<<
/Contents 79 0 R
@@ -533,6 +558,7 @@ endobj
endobj
%% Page 24
+%% Original object ID: 26 0
26 0 obj
<<
/Contents 81 0 R
@@ -554,6 +580,7 @@ endobj
endobj
%% Page 25
+%% Original object ID: 27 0
27 0 obj
<<
/Contents 83 0 R
@@ -575,6 +602,7 @@ endobj
endobj
%% Page 26
+%% Original object ID: 28 0
28 0 obj
<<
/Contents 85 0 R
@@ -596,6 +624,7 @@ endobj
endobj
%% Page 27
+%% Original object ID: 29 0
29 0 obj
<<
/Contents 87 0 R
@@ -617,6 +646,7 @@ endobj
endobj
%% Page 28
+%% Original object ID: 30 0
30 0 obj
<<
/Contents 89 0 R
@@ -638,6 +668,7 @@ endobj
endobj
%% Page 29
+%% Original object ID: 31 0
31 0 obj
<<
/Contents 91 0 R
@@ -659,6 +690,7 @@ endobj
endobj
%% Page 30
+%% Original object ID: 32 0
32 0 obj
<<
/Contents 93 0 R
@@ -680,6 +712,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 33 0
33 0 obj
<<
/Length 34 0 R
@@ -697,6 +730,7 @@ endobj
46
endobj
+%% Original object ID: 35 0
35 0 obj
<<
/BaseFont /Helvetica
@@ -707,6 +741,7 @@ endobj
>>
endobj
+%% Original object ID: 36 0
36 0 obj
[
/PDF
@@ -715,6 +750,7 @@ endobj
endobj
%% Contents for page 2
+%% Original object ID: 37 0
37 0 obj
<<
/Length 38 0 R
@@ -733,6 +769,7 @@ endobj
endobj
%% Contents for page 3
+%% Original object ID: 39 0
39 0 obj
<<
/Length 40 0 R
@@ -751,6 +788,7 @@ endobj
endobj
%% Contents for page 4
+%% Original object ID: 41 0
41 0 obj
<<
/Length 42 0 R
@@ -769,6 +807,7 @@ endobj
endobj
%% Contents for page 5
+%% Original object ID: 43 0
43 0 obj
<<
/Length 44 0 R
@@ -787,6 +826,7 @@ endobj
endobj
%% Contents for page 6
+%% Original object ID: 45 0
45 0 obj
<<
/Length 46 0 R
@@ -805,6 +845,7 @@ endobj
endobj
%% Contents for page 7
+%% Original object ID: 47 0
47 0 obj
<<
/Length 48 0 R
@@ -823,6 +864,7 @@ endobj
endobj
%% Contents for page 8
+%% Original object ID: 49 0
49 0 obj
<<
/Length 50 0 R
@@ -841,6 +883,7 @@ endobj
endobj
%% Contents for page 9
+%% Original object ID: 51 0
51 0 obj
<<
/Length 52 0 R
@@ -859,6 +902,7 @@ endobj
endobj
%% Contents for page 10
+%% Original object ID: 53 0
53 0 obj
<<
/Length 54 0 R
@@ -877,6 +921,7 @@ endobj
endobj
%% Contents for page 11
+%% Original object ID: 55 0
55 0 obj
<<
/Length 56 0 R
@@ -895,6 +940,7 @@ endobj
endobj
%% Contents for page 12
+%% Original object ID: 57 0
57 0 obj
<<
/Length 58 0 R
@@ -913,6 +959,7 @@ endobj
endobj
%% Contents for page 13
+%% Original object ID: 59 0
59 0 obj
<<
/Length 60 0 R
@@ -931,6 +978,7 @@ endobj
endobj
%% Contents for page 14
+%% Original object ID: 61 0
61 0 obj
<<
/Length 62 0 R
@@ -949,6 +997,7 @@ endobj
endobj
%% Contents for page 15
+%% Original object ID: 63 0
63 0 obj
<<
/Length 64 0 R
@@ -967,6 +1016,7 @@ endobj
endobj
%% Contents for page 16
+%% Original object ID: 65 0
65 0 obj
<<
/Length 66 0 R
@@ -985,6 +1035,7 @@ endobj
endobj
%% Contents for page 17
+%% Original object ID: 67 0
67 0 obj
<<
/Length 68 0 R
@@ -1003,6 +1054,7 @@ endobj
endobj
%% Contents for page 18
+%% Original object ID: 69 0
69 0 obj
<<
/Length 70 0 R
@@ -1021,6 +1073,7 @@ endobj
endobj
%% Contents for page 19
+%% Original object ID: 71 0
71 0 obj
<<
/Length 72 0 R
@@ -1039,6 +1092,7 @@ endobj
endobj
%% Contents for page 20
+%% Original object ID: 73 0
73 0 obj
<<
/Length 74 0 R
@@ -1057,6 +1111,7 @@ endobj
endobj
%% Contents for page 21
+%% Original object ID: 75 0
75 0 obj
<<
/Length 76 0 R
@@ -1075,6 +1130,7 @@ endobj
endobj
%% Contents for page 22
+%% Original object ID: 77 0
77 0 obj
<<
/Length 78 0 R
@@ -1093,6 +1149,7 @@ endobj
endobj
%% Contents for page 23
+%% Original object ID: 79 0
79 0 obj
<<
/Length 80 0 R
@@ -1111,6 +1168,7 @@ endobj
endobj
%% Contents for page 24
+%% Original object ID: 81 0
81 0 obj
<<
/Length 82 0 R
@@ -1129,6 +1187,7 @@ endobj
endobj
%% Contents for page 25
+%% Original object ID: 83 0
83 0 obj
<<
/Length 84 0 R
@@ -1147,6 +1206,7 @@ endobj
endobj
%% Contents for page 26
+%% Original object ID: 85 0
85 0 obj
<<
/Length 86 0 R
@@ -1165,6 +1225,7 @@ endobj
endobj
%% Contents for page 27
+%% Original object ID: 87 0
87 0 obj
<<
/Length 88 0 R
@@ -1183,6 +1244,7 @@ endobj
endobj
%% Contents for page 28
+%% Original object ID: 89 0
89 0 obj
<<
/Length 90 0 R
@@ -1201,6 +1263,7 @@ endobj
endobj
%% Contents for page 29
+%% Original object ID: 91 0
91 0 obj
<<
/Length 92 0 R
@@ -1219,6 +1282,7 @@ endobj
endobj
%% Contents for page 30
+%% Original object ID: 93 0
93 0 obj
<<
/Length 94 0 R
@@ -1239,105 +1303,105 @@ endobj
xref
0 95
0000000000 65535 f
-0000000025 00000 n
-0000000104 00000 n
-0000000500 00000 n
-0000000705 00000 n
-0000000910 00000 n
-0000001115 00000 n
-0000001320 00000 n
-0000001525 00000 n
-0000001730 00000 n
-0000001935 00000 n
-0000002141 00000 n
-0000002348 00000 n
-0000002555 00000 n
-0000002762 00000 n
-0000002969 00000 n
-0000003176 00000 n
-0000003383 00000 n
-0000003590 00000 n
-0000003797 00000 n
-0000004004 00000 n
-0000004211 00000 n
-0000004418 00000 n
-0000004625 00000 n
-0000004832 00000 n
-0000005039 00000 n
-0000005246 00000 n
-0000005453 00000 n
-0000005660 00000 n
-0000005867 00000 n
-0000006074 00000 n
-0000006281 00000 n
-0000006488 00000 n
-0000006707 00000 n
-0000006810 00000 n
-0000006830 00000 n
-0000006949 00000 n
-0000007008 00000 n
-0000007111 00000 n
-0000007154 00000 n
-0000007257 00000 n
-0000007300 00000 n
-0000007403 00000 n
-0000007446 00000 n
-0000007549 00000 n
-0000007592 00000 n
-0000007695 00000 n
-0000007738 00000 n
-0000007841 00000 n
-0000007884 00000 n
-0000007987 00000 n
-0000008030 00000 n
-0000008133 00000 n
-0000008177 00000 n
-0000008280 00000 n
-0000008324 00000 n
-0000008428 00000 n
-0000008472 00000 n
-0000008576 00000 n
-0000008620 00000 n
-0000008724 00000 n
-0000008768 00000 n
-0000008872 00000 n
-0000008916 00000 n
-0000009020 00000 n
-0000009064 00000 n
-0000009168 00000 n
-0000009212 00000 n
-0000009316 00000 n
-0000009360 00000 n
-0000009464 00000 n
-0000009508 00000 n
-0000009612 00000 n
-0000009656 00000 n
-0000009760 00000 n
-0000009804 00000 n
-0000009908 00000 n
-0000009952 00000 n
-0000010056 00000 n
-0000010100 00000 n
-0000010204 00000 n
-0000010248 00000 n
-0000010352 00000 n
-0000010396 00000 n
-0000010500 00000 n
-0000010544 00000 n
-0000010648 00000 n
-0000010692 00000 n
-0000010796 00000 n
-0000010840 00000 n
-0000010944 00000 n
-0000010988 00000 n
-0000011092 00000 n
-0000011136 00000 n
-0000011240 00000 n
+0000000052 00000 n
+0000000158 00000 n
+0000000581 00000 n
+0000000813 00000 n
+0000001045 00000 n
+0000001277 00000 n
+0000001509 00000 n
+0000001741 00000 n
+0000001973 00000 n
+0000002206 00000 n
+0000002440 00000 n
+0000002675 00000 n
+0000002910 00000 n
+0000003145 00000 n
+0000003380 00000 n
+0000003615 00000 n
+0000003850 00000 n
+0000004085 00000 n
+0000004320 00000 n
+0000004555 00000 n
+0000004790 00000 n
+0000005025 00000 n
+0000005260 00000 n
+0000005495 00000 n
+0000005730 00000 n
+0000005965 00000 n
+0000006200 00000 n
+0000006435 00000 n
+0000006670 00000 n
+0000006905 00000 n
+0000007140 00000 n
+0000007375 00000 n
+0000007622 00000 n
+0000007725 00000 n
+0000007773 00000 n
+0000007920 00000 n
+0000008007 00000 n
+0000008110 00000 n
+0000008181 00000 n
+0000008284 00000 n
+0000008355 00000 n
+0000008458 00000 n
+0000008529 00000 n
+0000008632 00000 n
+0000008703 00000 n
+0000008806 00000 n
+0000008877 00000 n
+0000008980 00000 n
+0000009051 00000 n
+0000009154 00000 n
+0000009225 00000 n
+0000009328 00000 n
+0000009400 00000 n
+0000009503 00000 n
+0000009575 00000 n
+0000009679 00000 n
+0000009751 00000 n
+0000009855 00000 n
+0000009927 00000 n
+0000010031 00000 n
+0000010103 00000 n
+0000010207 00000 n
+0000010279 00000 n
+0000010383 00000 n
+0000010455 00000 n
+0000010559 00000 n
+0000010631 00000 n
+0000010735 00000 n
+0000010807 00000 n
+0000010911 00000 n
+0000010983 00000 n
+0000011087 00000 n
+0000011159 00000 n
+0000011263 00000 n
+0000011335 00000 n
+0000011439 00000 n
+0000011511 00000 n
+0000011615 00000 n
+0000011687 00000 n
+0000011791 00000 n
+0000011863 00000 n
+0000011967 00000 n
+0000012039 00000 n
+0000012143 00000 n
+0000012215 00000 n
+0000012319 00000 n
+0000012391 00000 n
+0000012495 00000 n
+0000012567 00000 n
+0000012671 00000 n
+0000012743 00000 n
+0000012847 00000 n
+0000012919 00000 n
+0000013023 00000 n
trailer <<
/Root 1 0 R
/Size 95
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-11260
+13043
%%EOF
diff --git a/qpdf/qtest/qpdf/good19.qdf b/qpdf/qtest/qpdf/good19.qdf
index 1716fc75..4ffea062 100644
--- a/qpdf/qtest/qpdf/good19.qdf
+++ b/qpdf/qtest/qpdf/good19.qdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/good2.qdf b/qpdf/qtest/qpdf/good2.qdf
index 976ed2b2..7b33f199 100644
--- a/qpdf/qtest/qpdf/good2.qdf
+++ b/qpdf/qtest/qpdf/good2.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,18 +84,18 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/Root 1 0 R
/Size 8
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good20.qdf b/qpdf/qtest/qpdf/good20.qdf
index f4c8cad9..c30c75a5 100644
--- a/qpdf/qtest/qpdf/good20.qdf
+++ b/qpdf/qtest/qpdf/good20.qdf
@@ -5,100 +5,100 @@
1 0 obj
<<
/Type /ObjStm
- /Length 7271
+ /Length 9257
/N 83
- /First 686
+ /First 709
>>
stream
2 0
-3 74
-4 166
-5 2236
-6 2288
-7 2340
-8 2392
-9 2445
-10 2499
-11 2553
-12 2608
-13 2663
-14 2718
-15 2773
-16 2828
-17 2883
-18 2938
-19 2993
-20 3048
-21 3103
-22 3158
-23 3213
-24 3268
-25 3323
-26 3378
-27 3433
-28 3488
-29 3543
-30 3598
-31 3653
-32 3708
-33 3763
-34 3818
-35 3873
-36 3928
-37 3983
-38 4038
-39 4093
-40 4148
-41 4203
-42 4258
-43 4313
-44 4368
-45 4423
-46 4478
-47 4533
-48 4588
-49 4643
-50 4698
-51 4753
-52 4808
-53 4863
-54 4918
-55 4973
-56 5028
-57 5083
-58 5138
-59 5193
-60 5248
-61 5303
-62 5358
-63 5413
-64 5468
-65 5523
-66 5578
-67 5633
-68 5688
-69 5743
-70 5798
-71 5853
-72 5908
-73 5963
-74 6018
-75 6073
-76 6128
-77 6183
-78 6238
-79 6293
-80 6348
-81 6403
-82 6458
-83 6513
-84 6568
-%% Object stream: object 2, index 0
+3 97
+4 212
+5 2305
+6 2380
+7 2455
+8 2531
+9 2608
+10 2686
+11 2764
+12 2843
+13 2922
+14 3001
+15 3080
+16 3159
+17 3238
+18 3317
+19 3396
+20 3475
+21 3554
+22 3633
+23 3712
+24 3791
+25 3870
+26 3949
+27 4028
+28 4107
+29 4186
+30 4265
+31 4344
+32 4423
+33 4502
+34 4581
+35 4660
+36 4739
+37 4818
+38 4897
+39 4976
+40 5055
+41 5134
+42 5213
+43 5292
+44 5371
+45 5450
+46 5529
+47 5608
+48 5687
+49 5766
+50 5845
+51 5924
+52 6003
+53 6082
+54 6161
+55 6240
+56 6319
+57 6398
+58 6477
+59 6556
+60 6635
+61 6714
+62 6793
+63 6872
+64 6951
+65 7030
+66 7109
+67 7188
+68 7267
+69 7346
+70 7425
+71 7504
+72 7583
+73 7662
+74 7741
+75 7820
+76 7899
+77 7978
+78 8057
+79 8136
+80 8215
+81 8294
+82 8373
+83 8452
+84 8531
+%% Object stream: object 2, index 0; original object ID: 1
<<
/Pages 3 0 R
/Type /Catalog
>>
-%% Object stream: object 3, index 1
+%% Object stream: object 3, index 1; original object ID: 2
<<
/Count 1
/Kids [
@@ -106,7 +106,7 @@ stream
]
/Type /Pages
>>
-%% Object stream: object 4, index 2
+%% Object stream: object 4, index 2; original object ID: 3
%% Page 1
<<
/Contents 85 0 R
@@ -287,323 +287,323 @@ stream
>>
/Type /Page
>>
-%% Object stream: object 5, index 3
+%% Object stream: object 5, index 3; original object ID: 7
[
/Object-7
]
-%% Object stream: object 6, index 4
+%% Object stream: object 6, index 4; original object ID: 8
[
/Object-8
]
-%% Object stream: object 7, index 5
+%% Object stream: object 7, index 5; original object ID: 9
[
/Object-9
]
-%% Object stream: object 8, index 6
+%% Object stream: object 8, index 6; original object ID: 10
[
/Object-10
]
-%% Object stream: object 9, index 7
+%% Object stream: object 9, index 7; original object ID: 11
[
/Object-11
]
-%% Object stream: object 10, index 8
+%% Object stream: object 10, index 8; original object ID: 12
[
/Object-12
]
-%% Object stream: object 11, index 9
+%% Object stream: object 11, index 9; original object ID: 13
[
/Object-13
]
-%% Object stream: object 12, index 10
+%% Object stream: object 12, index 10; original object ID: 14
[
/Object-14
]
-%% Object stream: object 13, index 11
+%% Object stream: object 13, index 11; original object ID: 15
[
/Object-15
]
-%% Object stream: object 14, index 12
+%% Object stream: object 14, index 12; original object ID: 16
[
/Object-16
]
-%% Object stream: object 15, index 13
+%% Object stream: object 15, index 13; original object ID: 17
[
/Object-17
]
-%% Object stream: object 16, index 14
+%% Object stream: object 16, index 14; original object ID: 18
[
/Object-18
]
-%% Object stream: object 17, index 15
+%% Object stream: object 17, index 15; original object ID: 19
[
/Object-19
]
-%% Object stream: object 18, index 16
+%% Object stream: object 18, index 16; original object ID: 20
[
/Object-20
]
-%% Object stream: object 19, index 17
+%% Object stream: object 19, index 17; original object ID: 21
[
/Object-21
]
-%% Object stream: object 20, index 18
+%% Object stream: object 20, index 18; original object ID: 22
[
/Object-22
]
-%% Object stream: object 21, index 19
+%% Object stream: object 21, index 19; original object ID: 23
[
/Object-23
]
-%% Object stream: object 22, index 20
+%% Object stream: object 22, index 20; original object ID: 24
[
/Object-24
]
-%% Object stream: object 23, index 21
+%% Object stream: object 23, index 21; original object ID: 25
[
/Object-25
]
-%% Object stream: object 24, index 22
+%% Object stream: object 24, index 22; original object ID: 26
[
/Object-26
]
-%% Object stream: object 25, index 23
+%% Object stream: object 25, index 23; original object ID: 27
[
/Object-27
]
-%% Object stream: object 26, index 24
+%% Object stream: object 26, index 24; original object ID: 28
[
/Object-28
]
-%% Object stream: object 27, index 25
+%% Object stream: object 27, index 25; original object ID: 29
[
/Object-29
]
-%% Object stream: object 28, index 26
+%% Object stream: object 28, index 26; original object ID: 30
[
/Object-30
]
-%% Object stream: object 29, index 27
+%% Object stream: object 29, index 27; original object ID: 31
[
/Object-31
]
-%% Object stream: object 30, index 28
+%% Object stream: object 30, index 28; original object ID: 32
[
/Object-32
]
-%% Object stream: object 31, index 29
+%% Object stream: object 31, index 29; original object ID: 33
[
/Object-33
]
-%% Object stream: object 32, index 30
+%% Object stream: object 32, index 30; original object ID: 34
[
/Object-34
]
-%% Object stream: object 33, index 31
+%% Object stream: object 33, index 31; original object ID: 35
[
/Object-35
]
-%% Object stream: object 34, index 32
+%% Object stream: object 34, index 32; original object ID: 36
[
/Object-36
]
-%% Object stream: object 35, index 33
+%% Object stream: object 35, index 33; original object ID: 37
[
/Object-37
]
-%% Object stream: object 36, index 34
+%% Object stream: object 36, index 34; original object ID: 38
[
/Object-38
]
-%% Object stream: object 37, index 35
+%% Object stream: object 37, index 35; original object ID: 39
[
/Object-39
]
-%% Object stream: object 38, index 36
+%% Object stream: object 38, index 36; original object ID: 40
[
/Object-40
]
-%% Object stream: object 39, index 37
+%% Object stream: object 39, index 37; original object ID: 41
[
/Object-41
]
-%% Object stream: object 40, index 38
+%% Object stream: object 40, index 38; original object ID: 42
[
/Object-42
]
-%% Object stream: object 41, index 39
+%% Object stream: object 41, index 39; original object ID: 43
[
/Object-43
]
-%% Object stream: object 42, index 40
+%% Object stream: object 42, index 40; original object ID: 44
[
/Object-44
]
-%% Object stream: object 43, index 41
+%% Object stream: object 43, index 41; original object ID: 45
[
/Object-45
]
-%% Object stream: object 44, index 42
+%% Object stream: object 44, index 42; original object ID: 46
[
/Object-46
]
-%% Object stream: object 45, index 43
+%% Object stream: object 45, index 43; original object ID: 47
[
/Object-47
]
-%% Object stream: object 46, index 44
+%% Object stream: object 46, index 44; original object ID: 48
[
/Object-48
]
-%% Object stream: object 47, index 45
+%% Object stream: object 47, index 45; original object ID: 49
[
/Object-49
]
-%% Object stream: object 48, index 46
+%% Object stream: object 48, index 46; original object ID: 50
[
/Object-50
]
-%% Object stream: object 49, index 47
+%% Object stream: object 49, index 47; original object ID: 51
[
/Object-51
]
-%% Object stream: object 50, index 48
+%% Object stream: object 50, index 48; original object ID: 52
[
/Object-52
]
-%% Object stream: object 51, index 49
+%% Object stream: object 51, index 49; original object ID: 53
[
/Object-53
]
-%% Object stream: object 52, index 50
+%% Object stream: object 52, index 50; original object ID: 54
[
/Object-54
]
-%% Object stream: object 53, index 51
+%% Object stream: object 53, index 51; original object ID: 55
[
/Object-55
]
-%% Object stream: object 54, index 52
+%% Object stream: object 54, index 52; original object ID: 56
[
/Object-56
]
-%% Object stream: object 55, index 53
+%% Object stream: object 55, index 53; original object ID: 57
[
/Object-57
]
-%% Object stream: object 56, index 54
+%% Object stream: object 56, index 54; original object ID: 58
[
/Object-58
]
-%% Object stream: object 57, index 55
+%% Object stream: object 57, index 55; original object ID: 59
[
/Object-59
]
-%% Object stream: object 58, index 56
+%% Object stream: object 58, index 56; original object ID: 60
[
/Object-60
]
-%% Object stream: object 59, index 57
+%% Object stream: object 59, index 57; original object ID: 61
[
/Object-61
]
-%% Object stream: object 60, index 58
+%% Object stream: object 60, index 58; original object ID: 62
[
/Object-62
]
-%% Object stream: object 61, index 59
+%% Object stream: object 61, index 59; original object ID: 63
[
/Object-63
]
-%% Object stream: object 62, index 60
+%% Object stream: object 62, index 60; original object ID: 64
[
/Object-64
]
-%% Object stream: object 63, index 61
+%% Object stream: object 63, index 61; original object ID: 65
[
/Object-65
]
-%% Object stream: object 64, index 62
+%% Object stream: object 64, index 62; original object ID: 66
[
/Object-66
]
-%% Object stream: object 65, index 63
+%% Object stream: object 65, index 63; original object ID: 67
[
/Object-67
]
-%% Object stream: object 66, index 64
+%% Object stream: object 66, index 64; original object ID: 68
[
/Object-68
]
-%% Object stream: object 67, index 65
+%% Object stream: object 67, index 65; original object ID: 69
[
/Object-69
]
-%% Object stream: object 68, index 66
+%% Object stream: object 68, index 66; original object ID: 70
[
/Object-70
]
-%% Object stream: object 69, index 67
+%% Object stream: object 69, index 67; original object ID: 71
[
/Object-71
]
-%% Object stream: object 70, index 68
+%% Object stream: object 70, index 68; original object ID: 72
[
/Object-72
]
-%% Object stream: object 71, index 69
+%% Object stream: object 71, index 69; original object ID: 73
[
/Object-73
]
-%% Object stream: object 72, index 70
+%% Object stream: object 72, index 70; original object ID: 74
[
/Object-74
]
-%% Object stream: object 73, index 71
+%% Object stream: object 73, index 71; original object ID: 75
[
/Object-75
]
-%% Object stream: object 74, index 72
+%% Object stream: object 74, index 72; original object ID: 76
[
/Object-76
]
-%% Object stream: object 75, index 73
+%% Object stream: object 75, index 73; original object ID: 77
[
/Object-77
]
-%% Object stream: object 76, index 74
+%% Object stream: object 76, index 74; original object ID: 78
[
/Object-78
]
-%% Object stream: object 77, index 75
+%% Object stream: object 77, index 75; original object ID: 79
[
/Object-79
]
-%% Object stream: object 78, index 76
+%% Object stream: object 78, index 76; original object ID: 80
[
/Object-80
]
-%% Object stream: object 79, index 77
+%% Object stream: object 79, index 77; original object ID: 81
[
/Object-81
]
-%% Object stream: object 80, index 78
+%% Object stream: object 80, index 78; original object ID: 82
[
/Object-82
]
-%% Object stream: object 81, index 79
+%% Object stream: object 81, index 79; original object ID: 83
[
/Object-83
]
-%% Object stream: object 82, index 80
+%% Object stream: object 82, index 80; original object ID: 84
[
/Object-84
]
-%% Object stream: object 83, index 81
+%% Object stream: object 83, index 81; original object ID: 85
[
/Object-85
]
-%% Object stream: object 84, index 82
+%% Object stream: object 84, index 82; original object ID: 86
[
/Object-86
]
@@ -611,6 +611,7 @@ endstream
endobj
%% Contents for page 1
+%% Original object ID: 4 0
85 0 obj
<<
/Length 86 0 R
@@ -631,99 +632,99 @@ endobj
87 0 obj
<<
/Type /ObjStm
- /Length 5430
+ /Length 7468
/N 82
- /First 743
+ /First 771
>>
stream
88 0
-89 56
-90 195
-91 249
-92 303
-93 357
-94 411
-95 465
-96 519
-97 573
-98 628
-99 683
-100 739
-101 795
-102 851
-103 907
-104 964
-105 1021
-106 1078
-107 1135
-108 1192
-109 1249
-110 1306
-111 1363
-112 1420
-113 1477
-114 1534
-115 1591
-116 1648
-117 1705
-118 1762
-119 1819
-120 1876
-121 1933
-122 1990
-123 2047
-124 2104
-125 2161
-126 2218
-127 2275
-128 2332
-129 2389
-130 2446
-131 2503
-132 2560
-133 2617
-134 2674
-135 2731
-136 2788
-137 2845
-138 2902
-139 2959
-140 3016
-141 3073
-142 3130
-143 3187
-144 3244
-145 3301
-146 3358
-147 3415
-148 3472
-149 3529
-150 3586
-151 3643
-152 3700
-153 3757
-154 3814
-155 3871
-156 3928
-157 3985
-158 4042
-159 4099
-160 4156
-161 4213
-162 4270
-163 4327
-164 4384
-165 4441
-166 4498
-167 4555
-168 4612
-169 4669
-%% Object stream: object 88, index 0
+89 79
+90 242
+91 320
+92 398
+93 476
+94 554
+95 632
+96 710
+97 788
+98 867
+99 946
+100 1026
+101 1106
+102 1186
+103 1267
+104 1349
+105 1431
+106 1513
+107 1595
+108 1677
+109 1759
+110 1841
+111 1923
+112 2005
+113 2087
+114 2169
+115 2251
+116 2333
+117 2415
+118 2497
+119 2579
+120 2661
+121 2743
+122 2825
+123 2907
+124 2989
+125 3071
+126 3153
+127 3235
+128 3317
+129 3399
+130 3481
+131 3563
+132 3645
+133 3727
+134 3809
+135 3891
+136 3973
+137 4055
+138 4137
+139 4219
+140 4301
+141 4383
+142 4465
+143 4547
+144 4629
+145 4711
+146 4793
+147 4875
+148 4957
+149 5039
+150 5121
+151 5203
+152 5285
+153 5367
+154 5449
+155 5531
+156 5613
+157 5695
+158 5777
+159 5859
+160 5941
+161 6023
+162 6105
+163 6187
+164 6269
+165 6351
+166 6433
+167 6515
+168 6597
+169 6679
+%% Object stream: object 88, index 0; original object ID: 5
[
/PDF
/Text
]
-%% Object stream: object 89, index 1
+%% Object stream: object 89, index 1; original object ID: 6
<<
/BaseFont /Helvetica
/Encoding /WinAnsiEncoding
@@ -731,323 +732,323 @@ stream
/Subtype /Type1
/Type /Font
>>
-%% Object stream: object 90, index 2
+%% Object stream: object 90, index 2; original object ID: 87
[
/Object-87
]
-%% Object stream: object 91, index 3
+%% Object stream: object 91, index 3; original object ID: 88
[
/Object-88
]
-%% Object stream: object 92, index 4
+%% Object stream: object 92, index 4; original object ID: 89
[
/Object-89
]
-%% Object stream: object 93, index 5
+%% Object stream: object 93, index 5; original object ID: 90
[
/Object-90
]
-%% Object stream: object 94, index 6
+%% Object stream: object 94, index 6; original object ID: 91
[
/Object-91
]
-%% Object stream: object 95, index 7
+%% Object stream: object 95, index 7; original object ID: 92
[
/Object-92
]
-%% Object stream: object 96, index 8
+%% Object stream: object 96, index 8; original object ID: 93
[
/Object-93
]
-%% Object stream: object 97, index 9
+%% Object stream: object 97, index 9; original object ID: 94
[
/Object-94
]
-%% Object stream: object 98, index 10
+%% Object stream: object 98, index 10; original object ID: 95
[
/Object-95
]
-%% Object stream: object 99, index 11
+%% Object stream: object 99, index 11; original object ID: 96
[
/Object-96
]
-%% Object stream: object 100, index 12
+%% Object stream: object 100, index 12; original object ID: 97
[
/Object-97
]
-%% Object stream: object 101, index 13
+%% Object stream: object 101, index 13; original object ID: 98
[
/Object-98
]
-%% Object stream: object 102, index 14
+%% Object stream: object 102, index 14; original object ID: 99
[
/Object-99
]
-%% Object stream: object 103, index 15
+%% Object stream: object 103, index 15; original object ID: 100
[
/Object-100
]
-%% Object stream: object 104, index 16
+%% Object stream: object 104, index 16; original object ID: 101
[
/Object-101
]
-%% Object stream: object 105, index 17
+%% Object stream: object 105, index 17; original object ID: 102
[
/Object-102
]
-%% Object stream: object 106, index 18
+%% Object stream: object 106, index 18; original object ID: 103
[
/Object-103
]
-%% Object stream: object 107, index 19
+%% Object stream: object 107, index 19; original object ID: 104
[
/Object-104
]
-%% Object stream: object 108, index 20
+%% Object stream: object 108, index 20; original object ID: 105
[
/Object-105
]
-%% Object stream: object 109, index 21
+%% Object stream: object 109, index 21; original object ID: 106
[
/Object-106
]
-%% Object stream: object 110, index 22
+%% Object stream: object 110, index 22; original object ID: 107
[
/Object-107
]
-%% Object stream: object 111, index 23
+%% Object stream: object 111, index 23; original object ID: 108
[
/Object-108
]
-%% Object stream: object 112, index 24
+%% Object stream: object 112, index 24; original object ID: 109
[
/Object-109
]
-%% Object stream: object 113, index 25
+%% Object stream: object 113, index 25; original object ID: 110
[
/Object-110
]
-%% Object stream: object 114, index 26
+%% Object stream: object 114, index 26; original object ID: 111
[
/Object-111
]
-%% Object stream: object 115, index 27
+%% Object stream: object 115, index 27; original object ID: 112
[
/Object-112
]
-%% Object stream: object 116, index 28
+%% Object stream: object 116, index 28; original object ID: 113
[
/Object-113
]
-%% Object stream: object 117, index 29
+%% Object stream: object 117, index 29; original object ID: 114
[
/Object-114
]
-%% Object stream: object 118, index 30
+%% Object stream: object 118, index 30; original object ID: 115
[
/Object-115
]
-%% Object stream: object 119, index 31
+%% Object stream: object 119, index 31; original object ID: 116
[
/Object-116
]
-%% Object stream: object 120, index 32
+%% Object stream: object 120, index 32; original object ID: 117
[
/Object-117
]
-%% Object stream: object 121, index 33
+%% Object stream: object 121, index 33; original object ID: 118
[
/Object-118
]
-%% Object stream: object 122, index 34
+%% Object stream: object 122, index 34; original object ID: 119
[
/Object-119
]
-%% Object stream: object 123, index 35
+%% Object stream: object 123, index 35; original object ID: 120
[
/Object-120
]
-%% Object stream: object 124, index 36
+%% Object stream: object 124, index 36; original object ID: 121
[
/Object-121
]
-%% Object stream: object 125, index 37
+%% Object stream: object 125, index 37; original object ID: 122
[
/Object-122
]
-%% Object stream: object 126, index 38
+%% Object stream: object 126, index 38; original object ID: 123
[
/Object-123
]
-%% Object stream: object 127, index 39
+%% Object stream: object 127, index 39; original object ID: 124
[
/Object-124
]
-%% Object stream: object 128, index 40
+%% Object stream: object 128, index 40; original object ID: 125
[
/Object-125
]
-%% Object stream: object 129, index 41
+%% Object stream: object 129, index 41; original object ID: 126
[
/Object-126
]
-%% Object stream: object 130, index 42
+%% Object stream: object 130, index 42; original object ID: 127
[
/Object-127
]
-%% Object stream: object 131, index 43
+%% Object stream: object 131, index 43; original object ID: 128
[
/Object-128
]
-%% Object stream: object 132, index 44
+%% Object stream: object 132, index 44; original object ID: 129
[
/Object-129
]
-%% Object stream: object 133, index 45
+%% Object stream: object 133, index 45; original object ID: 130
[
/Object-130
]
-%% Object stream: object 134, index 46
+%% Object stream: object 134, index 46; original object ID: 131
[
/Object-131
]
-%% Object stream: object 135, index 47
+%% Object stream: object 135, index 47; original object ID: 132
[
/Object-132
]
-%% Object stream: object 136, index 48
+%% Object stream: object 136, index 48; original object ID: 133
[
/Object-133
]
-%% Object stream: object 137, index 49
+%% Object stream: object 137, index 49; original object ID: 134
[
/Object-134
]
-%% Object stream: object 138, index 50
+%% Object stream: object 138, index 50; original object ID: 135
[
/Object-135
]
-%% Object stream: object 139, index 51
+%% Object stream: object 139, index 51; original object ID: 136
[
/Object-136
]
-%% Object stream: object 140, index 52
+%% Object stream: object 140, index 52; original object ID: 137
[
/Object-137
]
-%% Object stream: object 141, index 53
+%% Object stream: object 141, index 53; original object ID: 138
[
/Object-138
]
-%% Object stream: object 142, index 54
+%% Object stream: object 142, index 54; original object ID: 139
[
/Object-139
]
-%% Object stream: object 143, index 55
+%% Object stream: object 143, index 55; original object ID: 140
[
/Object-140
]
-%% Object stream: object 144, index 56
+%% Object stream: object 144, index 56; original object ID: 141
[
/Object-141
]
-%% Object stream: object 145, index 57
+%% Object stream: object 145, index 57; original object ID: 142
[
/Object-142
]
-%% Object stream: object 146, index 58
+%% Object stream: object 146, index 58; original object ID: 143
[
/Object-143
]
-%% Object stream: object 147, index 59
+%% Object stream: object 147, index 59; original object ID: 144
[
/Object-144
]
-%% Object stream: object 148, index 60
+%% Object stream: object 148, index 60; original object ID: 145
[
/Object-145
]
-%% Object stream: object 149, index 61
+%% Object stream: object 149, index 61; original object ID: 146
[
/Object-146
]
-%% Object stream: object 150, index 62
+%% Object stream: object 150, index 62; original object ID: 147
[
/Object-147
]
-%% Object stream: object 151, index 63
+%% Object stream: object 151, index 63; original object ID: 148
[
/Object-148
]
-%% Object stream: object 152, index 64
+%% Object stream: object 152, index 64; original object ID: 149
[
/Object-149
]
-%% Object stream: object 153, index 65
+%% Object stream: object 153, index 65; original object ID: 150
[
/Object-150
]
-%% Object stream: object 154, index 66
+%% Object stream: object 154, index 66; original object ID: 151
[
/Object-151
]
-%% Object stream: object 155, index 67
+%% Object stream: object 155, index 67; original object ID: 152
[
/Object-152
]
-%% Object stream: object 156, index 68
+%% Object stream: object 156, index 68; original object ID: 153
[
/Object-153
]
-%% Object stream: object 157, index 69
+%% Object stream: object 157, index 69; original object ID: 154
[
/Object-154
]
-%% Object stream: object 158, index 70
+%% Object stream: object 158, index 70; original object ID: 155
[
/Object-155
]
-%% Object stream: object 159, index 71
+%% Object stream: object 159, index 71; original object ID: 156
[
/Object-156
]
-%% Object stream: object 160, index 72
+%% Object stream: object 160, index 72; original object ID: 157
[
/Object-157
]
-%% Object stream: object 161, index 73
+%% Object stream: object 161, index 73; original object ID: 158
[
/Object-158
]
-%% Object stream: object 162, index 74
+%% Object stream: object 162, index 74; original object ID: 159
[
/Object-159
]
-%% Object stream: object 163, index 75
+%% Object stream: object 163, index 75; original object ID: 160
[
/Object-160
]
-%% Object stream: object 164, index 76
+%% Object stream: object 164, index 76; original object ID: 161
[
/Object-161
]
-%% Object stream: object 165, index 77
+%% Object stream: object 165, index 77; original object ID: 162
[
/Object-162
]
-%% Object stream: object 166, index 78
+%% Object stream: object 166, index 78; original object ID: 163
[
/Object-163
]
-%% Object stream: object 167, index 79
+%% Object stream: object 167, index 79; original object ID: 164
[
/Object-164
]
-%% Object stream: object 168, index 80
+%% Object stream: object 168, index 80; original object ID: 165
[
/Object-165
]
-%% Object stream: object 169, index 81
+%% Object stream: object 169, index 81; original object ID: 166
[
/Object-166
]
@@ -1065,11 +1066,11 @@ endobj
>>
stream
-
-
+
+
endstream
endobj
startxref
-13053
+17104
%%EOF
diff --git a/qpdf/qtest/qpdf/good3.qdf b/qpdf/qtest/qpdf/good3.qdf
index 976ed2b2..7b33f199 100644
--- a/qpdf/qtest/qpdf/good3.qdf
+++ b/qpdf/qtest/qpdf/good3.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,18 +84,18 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/Root 1 0 R
/Size 8
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good4.qdf b/qpdf/qtest/qpdf/good4.qdf
index 976ed2b2..7b33f199 100644
--- a/qpdf/qtest/qpdf/good4.qdf
+++ b/qpdf/qtest/qpdf/good4.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,18 +84,18 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/Root 1 0 R
/Size 8
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good5.qdf b/qpdf/qtest/qpdf/good5.qdf
index 3ace3aa8..e830781c 100644
--- a/qpdf/qtest/qpdf/good5.qdf
+++ b/qpdf/qtest/qpdf/good5.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest true
/Root 1 0 R
@@ -92,5 +98,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good6.qdf b/qpdf/qtest/qpdf/good6.qdf
index 1602336f..c0c078b3 100644
--- a/qpdf/qtest/qpdf/good6.qdf
+++ b/qpdf/qtest/qpdf/good6.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest false
/Root 1 0 R
@@ -92,5 +98,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good7-not-normalized.qdf b/qpdf/qtest/qpdf/good7-not-normalized.qdf
index 5c6e9caf..eb5dbb10 100644
--- a/qpdf/qtest/qpdf/good7-not-normalized.qdf
+++ b/qpdf/qtest/qpdf/good7-not-normalized.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -57,6 +61,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -67,6 +72,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -77,13 +83,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest 16059
/Root 1 0 R
@@ -91,5 +97,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good7.qdf b/qpdf/qtest/qpdf/good7.qdf
index c338e80c..f7cdfe64 100644
--- a/qpdf/qtest/qpdf/good7.qdf
+++ b/qpdf/qtest/qpdf/good7.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -59,6 +63,7 @@ endobj
43
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -69,6 +74,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -79,13 +85,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000474 00000 n
-0000000493 00000 n
-0000000611 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000582 00000 n
+0000000628 00000 n
+0000000773 00000 n
trailer <<
/QTest 16059
/Root 1 0 R
@@ -93,5 +99,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-646
+808
%%EOF
diff --git a/qpdf/qtest/qpdf/good8.qdf b/qpdf/qtest/qpdf/good8.qdf
index 19c75991..a8f5297e 100644
--- a/qpdf/qtest/qpdf/good8.qdf
+++ b/qpdf/qtest/qpdf/good8.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest 3.14159
/Root 1 0 R
@@ -92,5 +98,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/good9.qdf b/qpdf/qtest/qpdf/good9.qdf
index c9c3d69b..f6c625ad 100644
--- a/qpdf/qtest/qpdf/good9.qdf
+++ b/qpdf/qtest/qpdf/good9.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 2 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 2 0
2 0 obj
<<
/Count 1
@@ -20,6 +22,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
3 0 obj
<<
/Contents 4 0 R
@@ -41,6 +44,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
4 0 obj
<<
/Length 5 0 R
@@ -58,6 +62,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
6 0 obj
<<
/BaseFont /Helvetica
@@ -68,6 +73,7 @@ endobj
>>
endobj
+%% Original object ID: 5 0
7 0 obj
[
/PDF
@@ -78,13 +84,13 @@ endobj
xref
0 8
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000161 00000 n
-0000000376 00000 n
-0000000475 00000 n
-0000000494 00000 n
-0000000612 00000 n
+0000000052 00000 n
+0000000133 00000 n
+0000000242 00000 n
+0000000484 00000 n
+0000000583 00000 n
+0000000629 00000 n
+0000000774 00000 n
trailer <<
/QTest (¡Hola!)
/Root 1 0 R
@@ -93,5 +99,5 @@ trailer <<
/ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
>>
startxref
-647
+809
%%EOF
diff --git a/qpdf/qtest/qpdf/test4-1.qdf b/qpdf/qtest/qpdf/test4-1.qdf
index 98f93d0f..916a9cc3 100644
--- a/qpdf/qtest/qpdf/test4-1.qdf
+++ b/qpdf/qtest/qpdf/test4-1.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 4 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 13 0
2 0 obj
<<
/A [
@@ -29,6 +31,7 @@ endobj
>>
endobj
+%% Original object ID: 8 0
3 0 obj
<<
/A 5 0 R
@@ -38,6 +41,7 @@ endobj
>>
endobj
+%% Original object ID: 2 0
4 0 obj
<<
/Count 1
@@ -48,6 +52,7 @@ endobj
>>
endobj
+%% Original object ID: 11 0
5 0 obj
[
1
@@ -56,6 +61,7 @@ endobj
]
endobj
+%% Original object ID: 12 0
6 0 obj
<<
/A 5 0 R
@@ -64,6 +70,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 3 0
7 0 obj
<<
/Contents 8 0 R
@@ -85,6 +92,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 4 0
8 0 obj
<<
/Length 9 0 R
@@ -102,6 +110,7 @@ endobj
44
endobj
+%% Original object ID: 6 0
10 0 obj
<<
/BaseFont /Helvetica
@@ -112,6 +121,7 @@ endobj
>>
endobj
+%% Original object ID: 7 0
11 0 obj
[
/PDF
@@ -122,17 +132,17 @@ endobj
xref
0 12
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000251 00000 n
-0000000346 00000 n
-0000000418 00000 n
-0000000450 00000 n
-0000000502 00000 n
-0000000719 00000 n
-0000000818 00000 n
-0000000837 00000 n
-0000000956 00000 n
+0000000052 00000 n
+0000000134 00000 n
+0000000333 00000 n
+0000000455 00000 n
+0000000555 00000 n
+0000000615 00000 n
+0000000694 00000 n
+0000000938 00000 n
+0000001037 00000 n
+0000001083 00000 n
+0000001229 00000 n
trailer <<
/Info 2 0 R
/QTest 3 0 R
@@ -141,5 +151,5 @@ trailer <<
/ID [<c61bd35bada064f61e0a56aa9588064e><31415926535897932384626433832795>]
>>
startxref
-992
+1265
%%EOF
diff --git a/qpdf/qtest/qpdf/test4-4.qdf b/qpdf/qtest/qpdf/test4-4.qdf
index 98f93d0f..838ccbe3 100644
--- a/qpdf/qtest/qpdf/test4-4.qdf
+++ b/qpdf/qtest/qpdf/test4-4.qdf
@@ -2,6 +2,7 @@
%¿÷¢þ
%QDF-1.0
+%% Original object ID: 1 0
1 0 obj
<<
/Pages 4 0 R
@@ -9,6 +10,7 @@
>>
endobj
+%% Original object ID: 11 0
2 0 obj
<<
/A [
@@ -29,6 +31,7 @@ endobj
>>
endobj
+%% Original object ID: 2 0
3 0 obj
<<
/A 5 0 R
@@ -38,6 +41,7 @@ endobj
>>
endobj
+%% Original object ID: 3 0
4 0 obj
<<
/Count 1
@@ -48,6 +52,7 @@ endobj
>>
endobj
+%% Original object ID: 4 0
5 0 obj
[
1
@@ -56,6 +61,7 @@ endobj
]
endobj
+%% Original object ID: 5 0
6 0 obj
<<
/A 5 0 R
@@ -64,6 +70,7 @@ endobj
endobj
%% Page 1
+%% Original object ID: 6 0
7 0 obj
<<
/Contents 8 0 R
@@ -85,6 +92,7 @@ endobj
endobj
%% Contents for page 1
+%% Original object ID: 7 0
8 0 obj
<<
/Length 9 0 R
@@ -102,6 +110,7 @@ endobj
44
endobj
+%% Original object ID: 9 0
10 0 obj
<<
/BaseFont /Helvetica
@@ -112,6 +121,7 @@ endobj
>>
endobj
+%% Original object ID: 10 0
11 0 obj
[
/PDF
@@ -122,17 +132,17 @@ endobj
xref
0 12
0000000000 65535 f
-0000000025 00000 n
-0000000079 00000 n
-0000000251 00000 n
-0000000346 00000 n
-0000000418 00000 n
-0000000450 00000 n
-0000000502 00000 n
-0000000719 00000 n
-0000000818 00000 n
-0000000837 00000 n
-0000000956 00000 n
+0000000052 00000 n
+0000000134 00000 n
+0000000333 00000 n
+0000000455 00000 n
+0000000554 00000 n
+0000000613 00000 n
+0000000692 00000 n
+0000000936 00000 n
+0000001035 00000 n
+0000001081 00000 n
+0000001228 00000 n
trailer <<
/Info 2 0 R
/QTest 3 0 R
@@ -141,5 +151,5 @@ trailer <<
/ID [<c61bd35bada064f61e0a56aa9588064e><31415926535897932384626433832795>]
>>
startxref
-992
+1264
%%EOF