m-holger
aeb66311c2
Use QPDFObjGen::set in QPDF::getCompressibleObjGens
2023-05-19 18:49:41 +01:00
m-holger
53f6c0a55a
Use QPDFObjGen::set in QPDFPageObjectHelper::forEachXObject
2023-05-19 18:49:36 +01:00
m-holger
1957ad1e05
Use QPDFObjGen::set in QPDFPageObjectHelper::getAttribute
2023-05-19 18:49:33 +01:00
m-holger
8335b2833b
Use QPDFObjGen::set in QPDFObjectHandle
2023-05-19 18:47:58 +01:00
m-holger
d60f06c15d
Use QPDFObjGen::set in QPDFFormFieldObjectHelper
2023-05-19 17:42:12 +01:00
m-holger
d395a90904
Use QPDFObjGen::set in QPDFAcroFormDocumentHelper::getFormFieldsForPage
2023-05-19 16:58:43 +01:00
m-holger
5b3b135fda
Tidy QPDFAcroFormDocumentHelper::getFieldsWithQualifiedName
2023-05-19 16:58:34 +01:00
m-holger
e37ce44186
Use QPDFObjGen::set in QPDFAcroFormDocumentHelper::transformAnnotations
2023-05-19 16:58:28 +01:00
m-holger
c12a6d06fc
Use QPDFObjGen::set in QPDFAcroFormDocumentHelper::traverseField
2023-05-19 16:58:24 +01:00
m-holger
e7e24fe070
Tidy QPDFAcroFormDocumentHelper::addAndRenameFormFields
2023-05-19 16:58:14 +01:00
m-holger
55abecc42d
Use QPDFObjGen::set in QPDFOutlineDocumentHelper
2023-05-19 16:58:08 +01:00
m-holger
0e81ffa7b6
Use QPDFObjGen::set in NNTree
2023-05-19 16:58:04 +01:00
m-holger
9b08017217
Add new convenience class QPDFObjGen::set
2023-05-19 12:27:53 +01:00
m-holger
08d7b56746
Prevent destruction of shared null objects
...
#863 uses a single null object for nulls that were previously implicit. In
certain circumstances this shared null object gets destroyed (i.e changed
to a QPDF_Destroyed object) when a QPDF object is destroyed.
Modify the QPDF destructor so that null objects get disconnected from the
dying QPDF object but not destroyed to prevent this from happening.
2023-04-11 18:01:14 +01:00
m-holger
3f2ebf334b
Fix bug in QPDF_Name::normalizeName introduced in #891
...
'#' was omitted from the list of chars that need to be escaped.
2023-04-04 15:54:54 +01:00
m-holger
41f79bedbc
Add new functions qpdfjob_create_qpdf and qpdfjob_write_qpdf
2023-04-02 09:45:19 +01:00
m-holger
c78f44798a
Add new _qpdf_data constructor taking a std::unique_ptr<QPDF>
...
Also, move _qpdf_data and to new header filer _qpdf_error to new header
file qpdf-c_impl.hh
2023-04-02 09:24:08 +01:00
m-holger
a2edf27b76
Initialize _qpdf_data members
2023-04-02 09:24:08 +01:00
Jay Berkenbilt
f8e39253be
Merge pull request #863 from m-holger/array
...
Refactor QPDF_Array
2023-04-01 11:05:07 -04:00
Jay Berkenbilt
40e4d1f97c
Merge pull request #930 from m-holger/throw
...
Code tidy re-throwing of exceptions
2023-04-01 09:42:52 -04:00
Jay Berkenbilt
5981b25e98
Merge pull request #932 from m-holger/wr_upo
...
Tune indentations in QPDFWriter::unparseObject
2023-04-01 09:37:55 -04:00
m-holger
0b53b648ab
Refactor QPDF_Array::unparse
2023-04-01 13:58:21 +01:00
m-holger
c2ab0441b5
Refactor QPDF_Array::getJSON
2023-04-01 13:58:15 +01:00
m-holger
a7b6975132
Remove SparseOHArray
2023-04-01 13:58:06 +01:00
m-holger
d3f2dc322b
Refactor QPDF_Array::copy
2023-04-01 13:57:47 +01:00
m-holger
a171ebb942
Refactor QPDF_Array::disconnect
2023-04-01 13:57:35 +01:00
m-holger
0aae54d383
Refactor QPDF_Array::setFromVector
2023-04-01 13:57:28 +01:00
m-holger
5072238867
Refactor QPDF_Array::getAsVector
2023-04-01 13:57:22 +01:00
m-holger
e186da1721
Remove SparseOHArray::at, setAt and append
2023-04-01 13:57:15 +01:00
m-holger
1c85e7ece4
Remove SparseOHArray::erase
2023-04-01 13:56:54 +01:00
m-holger
6295da436f
Remove SparseOHArray::insert
2023-04-01 13:56:47 +01:00
m-holger
182c2480df
Refactor QPDF_Array::setItem and rename to setAt
2023-04-01 13:56:29 +01:00
m-holger
4d37389bef
Refactor QPDF_Array::eraseItem and rename to erase
2023-04-01 13:56:16 +01:00
m-holger
1bb23d0545
Refactor QPDF_Array::insertItem and rename to insert
2023-04-01 13:56:10 +01:00
m-holger
cedb37caa1
Refactor QPDF_Array::appendItem and rename to push_back
2023-04-01 13:55:14 +01:00
m-holger
c6179da961
Add new method QPDFValue::checkOwnership
2023-04-01 13:54:44 +01:00
m-holger
a1a8f35b63
Refactor QPDF_Array::getItem and rename to at
2023-04-01 13:54:17 +01:00
m-holger
51d350c98c
Inline QPDF_Array::getNItems and rename to size
2023-04-01 12:25:15 +01:00
m-holger
e6db8ddeba
Change SparseOHArray index type to int and elements type to map
...
There are no reasons other than historical to use size_t.
On balance, using map is more efficient. Hold shared pointers to
QPDFObjects rather than QPDFObjectHandles for consistencey with
QPDF_Array.
2023-04-01 12:25:06 +01:00
m-holger
ea5164938e
Remove temporary OHArray
2023-04-01 12:24:52 +01:00
m-holger
9e30de8032
Remove temporary OHArray::erase, insert and copy
2023-03-29 13:15:39 +01:00
m-holger
0db65e7912
Remove temporary OHArray::disconnect and setAt
2023-03-29 13:06:26 +01:00
m-holger
1367226002
Remove temporary OHArray::at
2023-03-29 13:00:28 +01:00
m-holger
ad2875a4aa
Remove temporary OHArray::size, append and remove_last
...
Also, add const overload of QPDFObjectHandle::getObj
2023-03-29 12:34:07 +01:00
m-holger
8fdc3f0964
Optimize QPDFParser for non-sparse QPDF_Arrays
...
Stop using nullptr to represent null objects.
Count null array elements and trigger creation of sparse arrays if null count is
greater than 100.
2023-03-29 12:10:19 +01:00
m-holger
18c1ffe0df
Change underlying data structure of QPDF_Array in non-sparse mode to std::vector
2023-03-29 12:01:24 +01:00
m-holger
38cf7c1628
Add separate sparse mode to QPDF_Array
...
Add temporary clone of SparseOHArray to implement non-sparse mode.
2023-03-29 11:48:21 +01:00
m-holger
de29fd56c4
Remove redundant QPDF_Array::addExplicitElementsToList
2023-03-29 10:47:37 +01:00
m-holger
5f4f553c35
Refactor QUtil::hex_decode
2023-03-23 20:25:42 +00:00
m-holger
0795b6952b
Add new function QUtil::hex_decode_char
2023-03-23 20:23:37 +00:00