2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-09-29 05:29:06 +00:00
Commit Graph

964 Commits

Author SHA1 Message Date
Jay Berkenbilt
ef24a4151b Move JSON_array for C++-20 compatibility (fixes #943) 2023-05-20 18:25:58 -04:00
Jay Berkenbilt
1c14a9e6c4
Merge pull request #959 from m-holger/reserved
Add new method QPDF::newReserved()
2023-05-20 15:27:33 -04:00
m-holger
05a49cecf1 Add new method QPDF::newReserved 2023-05-20 19:56:01 +01:00
Jay Berkenbilt
d740c6ccce Rerun format_code (after merging clang-tidy PR) 2023-05-20 14:52:19 -04:00
Jay Berkenbilt
a85635b839
Merge pull request #929 from m-holger/ogguard
Add new convenience class QPDFObjGen::Guard
2023-05-20 14:09:49 -04:00
m-holger
e6577a1323 Replace 'virtual' specifier with 'override' 2023-05-20 15:41:56 +01:00
m-holger
ba5a3567a2 Remove redundant 'virtual' specifiers 2023-05-20 15:41:52 +01:00
m-holger
d0682f0f60 Use nullptr instead of 0 or NULL 2023-05-20 15:41:36 +01:00
m-holger
e28f4efb00 Replace deprecated C++ includes 2023-05-20 15:41:25 +01:00
m-holger
9db2965f62 Use QPDFObjGen::set in QPDFJob::getWantedJSONObjects 2023-05-19 18:56:10 +01:00
m-holger
ae2d623929 Use QPDFObjGen::set in QPDF::updateObjectMaps 2023-05-19 18:56:01 +01:00
m-holger
8fbef47093 Use QPDFObjGen::set in QPDF::getAllPages 2023-05-19 18:55:55 +01:00
m-holger
5473c0956c Use QPDFObjGen::set in QPDF::replaceForeignIndirectObjects 2023-05-19 18:52:48 +01:00
m-holger
8335b2833b Use QPDFObjGen::set in QPDFObjectHandle 2023-05-19 18:47:58 +01:00
m-holger
c12a6d06fc Use QPDFObjGen::set in QPDFAcroFormDocumentHelper::traverseField 2023-05-19 16:58:24 +01:00
m-holger
55abecc42d Use QPDFObjGen::set in QPDFOutlineDocumentHelper 2023-05-19 16:58:08 +01:00
m-holger
9b08017217 Add new convenience class QPDFObjGen::set 2023-05-19 12:27:53 +01:00
m-holger
41f79bedbc Add new functions qpdfjob_create_qpdf and qpdfjob_write_qpdf 2023-04-02 09:45:19 +01:00
Jay Berkenbilt
f8e39253be
Merge pull request #863 from m-holger/array
Refactor QPDF_Array
2023-04-01 11:05:07 -04:00
m-holger
a171ebb942 Refactor QPDF_Array::disconnect 2023-04-01 13:57:35 +01:00
m-holger
0db65e7912 Remove temporary OHArray::disconnect and setAt 2023-03-29 13:06:26 +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
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
0795b6952b Add new function QUtil::hex_decode_char 2023-03-23 20:23:37 +00:00
m-holger
d8acccd5c8 Warn if catalog type entry is invalid (fixes #810) 2023-03-19 20:07:53 +00:00
Jay Berkenbilt
a2c7471e66
Merge pull request #920 from m-holger/fixqdf_rl
Refactor QdfFixer::processLines
2023-03-18 13:59:47 -04:00
Jay Berkenbilt
84e29026f5
Merge pull request #926 from m-holger/omap
Remove redundant parameter depth from QPDF::updateObjectMaps
2023-03-18 13:28:19 -04:00
Jay Berkenbilt
b480f7186f
Merge pull request #928 from m-holger/wr_og
Add new data member QPDFWriter::Members::root_og
2023-03-18 13:28:12 -04:00
m-holger
b7791566f6 Add new data member QPDFWriter::Members::root_og
Also, uninitialize QPDFWriter::Members members.
2023-03-17 11:19:48 +00:00
m-holger
5af32b53a3 Remove redundant parameter depth from QPDF::updateObjectMaps 2023-03-15 17:50:17 +00:00
m-holger
43d9ee56ea Split QPDFJob::run into createQPDF and writeQPDF
Also, change QPDFJob to use unique_ptr<QPDF> instead of shared pointers.
2023-03-09 17:21:55 +00:00
m-holger
4ee6ff0a73 Add new procedure QUtil::read_file_into_string 2023-03-08 21:00:26 +00:00
m-holger
4359de9038 Bump version to 11.4.0 2023-03-05 15:19:26 +00:00
m-holger
b27be3ed27 Remove redundant parameter from QPDFJob::handlePageSpecs and doSplitPages 2023-03-05 09:01:49 -05:00
m-holger
284b8efbc6 Bump version to 11.3.1 2023-03-05 09:01:49 -05:00
Jay Berkenbilt
26606a37d3 Revert "Add QPDFObjectHandle operator bool"
This reverts commit 56c923d109.

This commit breaks pikepdf.
2023-02-25 16:19:42 -05:00
Jay Berkenbilt
c99a1ecd4f Update copyright to 2023 2023-02-25 14:18:13 -05:00
Jay Berkenbilt
48bacbf2e6 Refactor overlay/underlay in preparation for change 2023-02-25 11:25:28 -05:00
m-holger
7ae1e80fd6 Change JSON::Members::value to std::unique_ptr 2023-02-19 12:06:36 +00:00
m-holger
a4f3dddb79 Change JSON_dictionary and JSON_array to store JSON objects rather than std::shared_ptr<JSON_value>
Recognise that JSON objects are effectively shared pointers to JSON_value.
2023-02-19 12:05:53 +00:00
Jay Berkenbilt
0f97e98203 Handle linearization warnings as proper warning (fixes #851) 2023-02-18 19:38:49 -05:00
Jay Berkenbilt
088fabd9b9 Move most QPDF initializations to header 2023-02-18 19:38:37 -05:00
Jay Berkenbilt
b3cfa1010f
Merge pull request #902 from m-holger/od
Refactor creation of object descriptions
2023-02-18 17:49:18 -05:00
Jay Berkenbilt
e4e03e9ac1
Merge pull request #890 from m-holger/jpsp
Eliminate the use of shared pointers in JSONParser
2023-02-18 17:43:02 -05:00
m-holger
da14ab4dc7 Move definition of QPDF::JSONReactor into QPDF_json
Allow access to private header files when defining data members.
2023-02-18 08:33:08 +00:00
m-holger
dab27c9bb3 Refactor setting of object descriptions in QPDF::JSONReactor 2023-02-18 08:33:08 +00:00
m-holger
d80b63c3c0 Refactor JSON type checks 2023-02-11 15:44:03 -05:00
m-holger
72bf719772 Inline QIntC functions 2023-02-11 15:38:11 -05:00
m-holger
9096df74fc Replace strchr in QUtil::is_hex_digit and is_space 2023-02-05 08:29:21 -05:00
m-holger
b6f048546f Eliminate the use of shared pointers in JSONParser 2023-02-05 12:46:38 +00:00
m-holger
3dde66ddcd Refactor JSON::writeNext 2023-01-28 14:49:32 -05:00
Jay Berkenbilt
1308c45090 Implement --remove-restrictions (fixes #833) 2023-01-28 13:42:19 -05:00
Jay Berkenbilt
fe11f13d63 Add stub for --remove-restrictions 2023-01-28 13:24:45 -05:00
Jay Berkenbilt
acfc9db051 QPDFJob: switch to C++11-style field initializers 2023-01-28 13:24:30 -05:00
m-holger
d16308b3f5 Tune QPDFWriter::writeString etc methods
Use string_view parameters and call pipeline write methods directly.
2023-01-23 07:00:58 -05:00
m-holger
e8cdc46286 Tidy QPDFXRefEntry creation 2023-01-21 18:18:15 -05:00
m-holger
aefb8ff9ef Refactor QPDFWriter::writePad 2023-01-08 13:33:10 -05:00
m-holger
8363657cf3 Change QPDFWriter::object_queue to std::vector 2023-01-08 13:33:10 -05:00
m-holger
b252e70cb6 Add new methods QPDFTokenizer::getType, getValue, getRawValue and getErrorMessage 2023-01-07 15:24:51 -05:00
m-holger
f689769cca Refactor QPDFTokenizer::readToken 2023-01-07 15:24:51 -05:00
m-holger
863d95e567 Add new method QPDFTokenizer::nextToken 2023-01-07 15:24:51 -05:00
m-holger
942a2c3f68 Add new function QUtil::hex_encode_char 2023-01-06 18:42:12 -05:00
m-holger
1326ff7f79 Inline QPDFObjectHandle::dereference 2023-01-02 14:15:16 -05:00
m-holger
2611f42c36 Bump version to 11.3.0 2022-12-31 19:16:38 -05:00
m-holger
56c923d109 Add QPDFObjectHandle operator bool 2022-12-31 19:16:38 -05:00
m-holger
d7b470761b Remove QPDFObjectHandle::Factory and ObjAccessor 2022-12-31 19:16:38 -05:00
m-holger
432f417429 Add new methods QPDFObjectHandle::getObj and getObjectPtr
Also, make QPDFObjectHandle(std::shared_ptr<QPDFObject> const&) public.
2022-12-31 19:16:38 -05:00
m-holger
9da50ca360 Change olist variable in QPDFParser::parse to vector<shared_ptr<QPDFObject>> 2022-12-31 14:37:35 -05:00
m-holger
b0457b37e2 Update doc comment for QPDF::fixDanglingReferences 2022-12-31 09:28:28 -05:00
m-holger
cfcb279e49 Alternative fix logic for fixDanglingReferences 2022-12-06 15:21:34 -05:00
m-holger
008364a9a4 Remove redundant friend class statements 2022-12-04 14:05:16 -05:00
Jay Berkenbilt
1d9209ee74 Bump version to 11.2.1 2022-11-26 18:13:46 -05:00
Jay Berkenbilt
562ff1b608 Rename function for pikepdf (for 11.2.0)
A new private overload of QPDF::makeIndirectObject breaks pikepdf's
build, so renaming function.
2022-11-20 16:04:58 -05:00
Jay Berkenbilt
ddd889af9d Fix release notes and ChangeLog for 11.2 2022-11-20 15:33:13 -05:00
m-holger
4325e6e4a7 Refactor QPDFObjectHandle::copyObject and rename to makeDirect 2022-11-20 12:07:22 -05:00
m-holger
585ecf17c8 Remove redundant parameter cross_indirect from QPDFObjectHandle::copyObject 2022-11-20 12:07:22 -05:00
m-holger
ebc15f4dd0 Remove redundant parameter first_level_only from QPDFObjectHandle::copyObject 2022-11-20 12:07:22 -05:00
m-holger
64059014c9 Refactor QPDFObjectHandle::shallowCopy 2022-11-20 12:07:22 -05:00
m-holger
3e3b79a774 Remove redundant parameter first_level_only from QPDFObjectHandle::shallowCopyInternal2 and copyObject2 2022-11-20 12:07:22 -05:00
m-holger
3efd665703 Remove redundant parameters cross_indirect and stop_atstreams from QPDFObjectHandle::copyObject1 2022-11-20 12:07:22 -05:00
m-holger
d7b8525235 Refactor QPDFObjectHandle::unsafeShallowCopy 2022-11-20 12:07:22 -05:00
m-holger
0289b21c3b Remove redundant QPDFObjectHandle::copyObject2
copyObject2 repeats a second time what
new_obj = QPDFObjectHandle(obj->copy(true))
in shallowCopyInternal2 already did.
2022-11-20 12:07:22 -05:00
m-holger
15e8d3a763 Remove redundant parameter first_level_only from QPDFObjectHandle::shallowCopyInternal2 and copyObject2 2022-11-20 12:07:22 -05:00
m-holger
0827b1096e Remove redundant parameters cross_indirect and stop_atstreams from QPDFObjectHandle::copyObject2 2022-11-20 12:07:22 -05:00
m-holger
63d1dcb414 Split QPDFObjectHandle::shallowCopyInternal and copyObject
Have separate versions for unsafeShallowCopy, shallowCopy and makeDirect.
2022-11-20 12:07:22 -05:00
m-holger
34a6f8938f Add methods QPDFTokenizer::Token::isWord 2022-11-20 11:55:02 -05:00
m-holger
dca70f13e7 Add method QPDFTokenizer::Token::isInteger 2022-11-20 11:55:02 -05:00
Jay Berkenbilt
e9980efec8 Correctly handle reuse of xref stream (fixes #809) 2022-11-19 17:03:17 -05:00
m-holger
bf347dfb73 Remove QPDFObjectHandle::Factory::newStream 2022-11-19 14:10:42 -05:00
m-holger
9ebabd1953 Add new methods QPDF::newStream 2022-11-19 14:10:42 -05:00
m-holger
0a3c533186 Add private method QPDF::nextObjGen 2022-11-19 14:10:42 -05:00
m-holger
b3d71e1f58 Add private overload of QPDF::makeIndirectObject taking a QPDFObject shared_ptr 2022-11-19 14:10:42 -05:00
Jay Berkenbilt
5c5b4e640e Be more conservative about QPDF_DLL_CLASS with mingw (fixes #799)
* Define it even though previous experiments have shown it to be
  unnecessary since it seems like it may be necessary after all
* Add QPDF_DLL_CLASS to QPDFObjectHelper and QPDFDocumentHelper in
  case there's some future unknown reason why someone may want to have
  them and/or in case it helps with the weird
  QPDFNameTreeObjectHelper problem.
2022-10-06 08:40:08 -04:00
Jay Berkenbilt
d14765f1c3 Bump version to 11.2.0 2022-10-06 07:02:43 -04:00
m-holger
c63fb86c01 Inline call to QPDFObjectHandle::parse in QPDF::readObject 2022-10-01 11:17:39 -04:00
m-holger
5ccab4be03 Add private methods QPDF::damagedPDF 2022-10-01 11:17:39 -04:00
m-holger
b948366280 Add doc comment to QPDF::getFilename 2022-10-01 11:17:39 -04:00
Jay Berkenbilt
9a9a7ab097 Comment about qpdf/PointerHolder.hh in public headers 2022-09-23 15:15:39 -04:00
m-holger
44a7aff56f Refactor Pl_Buffer
Base implementation of the buffer on std::basic_string<unsigned char>.
2022-09-23 15:09:13 -04:00
Jay Berkenbilt
6b371cc727 Bump version to 11.1.1 2022-09-21 15:58:32 -04:00