Age | Commit message (Collapse) | Author |
|
3.0.rc1
|
|
Move object parsing code from QPDF to QPDFObjectHandle and
parameterize the parts of it that are specific to a QPDF object.
Provide a version that can't handle indirect objects and that can be
called on an arbitrary string.
A side effect of this change is that the offset used when reporting
invalid stream length has changed, but since the new value seems like
a better value than the old one, the test suite has been updated
rather than making the code backward compatible. This only effects
the offset reported for invalid streams that lack /Length or have an
invalid /Length key.
Updated some test code and exmaples to use QPDFObjectHandle::parse.
Supporting changes include adding a BufferInputSource constructor that
takes a string.
|
|
|
|
InputSource, FileInputSource, and BufferInputSource are now top-level
classes instead of privately nested inside QPDF.
|
|
|
|
This includes QPDF::copyForeignObject and supporting foreign objects
as arguments to addPage*.
|
|
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.
|
|
This rework makes xref reconstruction run much faster and use much
less memory.
|
|
|
|
|
|
|
|
|
|
This makes it possible to store offsets that are larger than 2 GB in
the trailer dictionary.
|
|
|
|
Also updated pdf_from_scratch test driver to use the new factories,
and made some cosmetic improvements and documentation updates for the
emptyPDF() method.
|
|
|
|
off_t is used internally only when needed to talk to standard
libraries. This requires that the "long long" type be supported by
the compiler.
|
|
|
|
|
|
|
|
|
|
Significantly improve the code's use of off_t for file offsets, size_t
for memory sizes, and integer types in cases where there has to be
compatibility with external interfaces. Rework sections of the code
that would have prevented qpdf from working on files larger than 2 (or
maybe 4) GB in size.
|
|
|
|
|
|
|
|
instead of delete, thus making it useful to run valgrind over qpdf during its test suite
|
|
|
|
|
|
git-svn-id: svn+q:///qpdf/trunk@1062 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1052 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1051 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1049 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1045 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1037 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1035 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1034 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
accidentally backed out
git-svn-id: svn+q:///qpdf/trunk@1031 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
a buffer; also fix a bug in BufferInputSource::seek
git-svn-id: svn+q:///qpdf/trunk@1030 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1027 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1016 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1012 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@1004 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@991 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@979 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@976 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@971 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@970 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@962 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@958 71b93d88-0707-0410-a8cf-f5a4172ac649
|
|
git-svn-id: svn+q:///qpdf/trunk@949 71b93d88-0707-0410-a8cf-f5a4172ac649
|