diff options
author | Jay Berkenbilt <ejb@ql.org> | 2012-07-08 20:19:19 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2012-07-11 05:34:32 +0200 |
commit | 8a217eb3a26931453b4f003c6c18ad8569230cf1 (patch) | |
tree | dfca77568e0640be6555bfe550a1e334dfb0710e /libqpdf/QPDF.cc | |
parent | af64668ad190a3f28fbeb233238cb4a76db67d7c (diff) | |
download | qpdf-8a217eb3a26931453b4f003c6c18ad8569230cf1.tar.zst |
Add concept of reserved objects
QPDFObjectHandle::{new,is,assert}Reserved, QPDF::replaceReserved
provide a mechanism to add objects to a PDF file when there are
circular references. This is a prerequisite to copying objects from
one PDF to another.
Diffstat (limited to 'libqpdf/QPDF.cc')
-rw-r--r-- | libqpdf/QPDF.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index a66b4f15..1c4e5d8d 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -2057,6 +2057,18 @@ QPDF::replaceObject(int objid, int generation, QPDFObjectHandle oh) } void +QPDF::replaceReserved(QPDFObjectHandle reserved, + QPDFObjectHandle replacement) +{ + QTC::TC("qpdf", "QPDF replaceReserved"); + reserved.assertReserved(); + replaceObject(reserved.getObjectID(), + reserved.getGeneration(), + replacement); +} + + +void QPDF::swapObjects(int objid1, int generation1, int objid2, int generation2) { // Force objects to be loaded into cache; then swap them in the |