Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-05-27 | Code tidy - reflow comments and strings | m-holger | |
2023-05-21 | Rerun clang-format | Jay Berkenbilt | |
2023-05-19 | Use QPDFObjGen::set in QPDFPageObjectHelper::forEachXObject | m-holger | |
2023-05-19 | Use QPDFObjGen::set in QPDFPageObjectHelper::getAttribute | m-holger | |
2022-11-20 | Add methods QPDFTokenizer::Token::isWord | m-holger | |
2022-11-19 | Use QPDF::newStream in library | m-holger | |
2022-09-07 | Revert getOwningQPDF, and add getQPDF that returns a reference | Jay Berkenbilt | |
2022-09-07 | Clarify and improve QPDFPageObjectHelper::get*Box methods | Jay Berkenbilt | |
Add copy_if_fallback and explain how it differs from copy_if_shared. | |||
2022-08-28 | Add optional parameter allow_nullptr to QPDFObjectHandle::getOwningQPDF | m-holger | |
Also, inline method and add optional parameter error_msg. | |||
2022-07-24 | Tweak "AndGet" mutator functions again | Jay Berkenbilt | |
Remove any ambiguity around whether old or new value is being returned. | |||
2022-07-24 | Overload StreamDataProvider::provideStreamData | m-holger | |
Use 'QPDFObjGen const&' instead of 'int, int' in signature. | |||
2022-07-24 | Add optional parameter separator to QPDFObjGen::unparse | m-holger | |
Also, revert inlining of unparse and operator << from commit 4c6640c in order to avoid exposing QUtil. | |||
2022-05-20 | Back out fluent QPDFObjectHandle methods. Keep the andGet methods. | Jay Berkenbilt | |
I decided these were confusing and inconsistent with how JSON works. They muddle the API rather than improving it. | |||
2022-05-04 | Make use of the new Pipeline methods in some places | Jay Berkenbilt | |
2022-04-30 | Formatting: remove space in range-style for loops | Jay Berkenbilt | |
Change .clang-format and commit automated changes from a fresh run of format-code | |||
2022-04-30 | Use fluent replaceKey | Jay Berkenbilt | |
2022-04-30 | Use replaceKeyAndGet in a few places in existing code | Jay Berkenbilt | |
2022-04-16 | Use anonymous namespaces for file-private classes | Jay Berkenbilt | |
2022-04-16 | Use = default and = delete where possible in classes | Jay Berkenbilt | |
2022-04-16 | Make ABI-breaking changes that don't modify API at all | Jay Berkenbilt | |
* Merge overloaded functions by adding default values * Remove non-const methods that are identical to const methods | |||
2022-04-09 | Replace PointerHolder with std::shared_ptr in library sources only | Jay Berkenbilt | |
(patrepl and cleanpatch are my own utilities) patrepl s/PointerHolder/std::shared_ptr/g {include,libqpdf}/qpdf/*.hh patrepl s/PointerHolder/std::shared_ptr/g libqpdf/*.cc patrepl s/make_pointer_holder/std::make_shared/g libqpdf/*.cc patrepl s/make_array_pointer_holder/QUtil::make_shared_array/g libqpdf/*.cc patrepl s,qpdf/std::shared_ptr,qpdf/PointerHolder, **/*.cc **/*.hh git restore include/qpdf/PointerHolder.hh cleanpatch ./format-code | |||
2022-04-04 | Programmatically apply new formatting to code | Jay Berkenbilt | |
Run this: for i in **/*.cc **/*.c **/*.h **/*.hh; do clang-format < $i >| $i.new && mv $i.new $i done | |||
2022-02-08 | WHITESPACE ONLY -- expand tabs in source code | Jay Berkenbilt | |
This comment expands all tabs using an 8-character tab-width. You should ignore this commit when using git blame or use git blame -w. In the early days, I used to use tabs where possible for indentation, since emacs did this automatically. In recent years, I have switched to only using spaces, which means qpdf source code has been a mixture of spaces and tabs. I have avoided cleaning this up because of not wanting gratuitous whitespaces change to cloud the output of git blame, but I changed my mind after discussing with users who view qpdf source code in editors/IDEs that have other tab widths by default and in light of the fact that I am planning to start applying automatic code formatting soon. | |||
2022-02-07 | Update for clean compile with POINTERHOLDER_TRANSITION=2 | Jay Berkenbilt | |
2022-02-05 | Add operator ""_qpdf for creating QPDFObjectHandle literals | Jay Berkenbilt | |
2022-02-04 | Add a blank line after the first header included in each source | Jay Berkenbilt | |
2022-02-04 | PointerHolder: deprecate getPointer() and getRefcount() | Jay Berkenbilt | |
Use get() and use_count() instead. Add #define NO_POINTERHOLDER_DEPRECATION to remove deprecation markers for these only. This commit also removes all deprecated PointerHolder API calls from qpdf's code except in PointerHolder's test suite, which must continue to test the deprecated APIs. | |||
2022-01-27 | Remove some if statements and simplify some boolean expressions | m-holger | |
Use QPDFObjectHandle::isNameAndEquals, isDictionaryOfType and isStreamOfType. | |||
2021-03-04 | Don't use handleWarning, which is being reverted | Jay Berkenbilt | |
2021-03-04 | Major rework of handling form fields when copying pages (fixes #509) | Jay Berkenbilt | |
2021-03-03 | Remove unreferenced: ignore names that are not Fonts or XObjects | Jay Berkenbilt | |
Converted ResourceFinder to ParserCallbacks so we can better detect the name that precedes various operators and use the operators to sort the names into resource types. This enables us to be smarter about detecting unreferenced resources in pages and also sets the stage for reconciling differences in /DR across documents. | |||
2021-03-03 | Create ResourceFinder from NameWatcher in QPDFPageObjectHelper | Jay Berkenbilt | |
2021-02-23 | Remove warning that gives false positives in some normal cases | Jay Berkenbilt | |
2021-02-23 | Add new placeFormXObject that takes a matrix reference | Jay Berkenbilt | |
2021-02-23 | Add copyAnnotations, use with overlay/underlay (fixes #395) | Jay Berkenbilt | |
2021-02-21 | Add transformAnnotations and fix flattenRotations to use it | Jay Berkenbilt | |
2021-02-21 | Explicitly override inherited rotate in flattenRotations | Jay Berkenbilt | |
2021-02-21 | Use QPDFMatrix inside flattenRotations | Jay Berkenbilt | |
2021-02-18 | Add QPDFPageObjectHelper::getMatrixForFormXObjectPlacement | Jay Berkenbilt | |
2021-02-03 | Handle older PDFs whose form XObjects inherit resources (fixes #494) | Jay Berkenbilt | |
When removing unreferenced resources, notice if a page (recursively) contains a form XObject with unreferenced resources, and count any such resources as referenced by the page. | |||
2021-02-03 | Refactor removal of unreferenced resources | Jay Berkenbilt | |
Refactor in preparation for resolving unresolved resources in form xobjects from page. | |||
2021-01-31 | Handle strings in inline image dictionaries | Jay Berkenbilt | |
We need to use token.getRawValue, not token.getValue | |||
2021-01-31 | Recover from exceptions during filtering for inline images | Jay Berkenbilt | |
2021-01-04 | Spell check | Jay Berkenbilt | |
2021-01-03 | Fix outdated comment | Jay Berkenbilt | |
2021-01-02 | Make more QPDFPageObjectHelper methods work with form XObject | Jay Berkenbilt | |
2021-01-02 | Externalize inline images now includes form XObjects | Jay Berkenbilt | |
2021-01-02 | Add several methods for working with form XObjects (fixes #436) | Jay Berkenbilt | |
Make some more methods in QPDFPageObjectHelper work with form XObjects, provide forEach methods to walk through nested form XObjects, possibly recursively. This should make it easier to work with form XObjects from user code. | |||
2021-01-02 | QPDFPageObjectHelper: filterPageContents -> filterContents + form XObject | Jay Berkenbilt | |
2021-01-02 | QPDFPageObjectHelper: getPageImages -> getImages | Jay Berkenbilt | |