-
Fixes #1659
-
Test for #1654
-
Co-authored-by: m-holger <34626170+m-holger@users.noreply.github.com>
-
Introduce a new `--remove-acroform` option to remove the interactive form dictionary from the document catalog. Update related documentation, tests, and release notes to reflect this new feature. Fixes #1403
-
- Automatically repair missing or invalid `/Type` entries by setting them to `/Catalog`, unless in inspection mode. - Update related documentation and warnings to reflect this behavior.
-
- Move AcroForm-related methods (`analyze`, `traverseField`, `getOrCreateAcroForm`, etc.) from `QPDFAcroFormDocumentHelper` to the `AcroForm` class. - Update method calls across files to reflect changes. - Improve comments for methods to align with PDF specifications.
-
Introduce `qpdf::global::inspection_mode` for analyzing and repairing damaged PDFs with a restricted feature set. Update relevant code to enforce restrictions and add supporting test cases.
-
- Add warning with associated documentation links. - Update tests to reflect the new warning messages.
-
- Introduce `limits_error` method in `QPDFParser` for centralized limit-related error handling. - Enhance warnings and error messages with detailed limit identifiers (e.g., `parser-max-nesting`). - Refactor limit checks to improve maintainability and ensure uniformity in error reporting. - Update tests and output to reflect adjusted error handling approach.
-
Enhance the `global` namespace by introducing `limit_errors` for tracking the number of exceeded limits. Update related tests and documentation to ensure functionality and clarity.
-
…n` and simplify logic - Replace `std::logic_error` with `util::assertion` for consistency. - Use `using namespace qpdf` for cleaner code. - Update `test_62` to cover `Pipeline` output method.
-
- Add `to_int` utility to validate integer ranges for parameters. - Enforce range checks: `compression-level` (1-9) and `jpeg-quality` (0-100). - Enhance test coverage for invalid parameter scenarios.
-
Fix bug in #1595
-
- Updated warning messages to provide clearer descriptions of common issues ("object has offset 0", "xref entry missing") and note that these are handled gracefully by qpdf. - Adjusted logic in `QPDF_objects.cc` to identify and process `xref` stream-specific anomalies accurately. Fixes #1594 Fixes #1292
-
…streamline logic, update references, and improve method documentation.
-
…ernativeName`, and `getMappingName` with streamlined implementations using `fully_qualified_name`, `partial_name`, `alternative_name`, and `mapping_name`. Simplify logic and enhance consistency across methods.
-
… for clarity and consistency across dictionary operations.
-
…ent and simplified temporary null management. Clean up unused test coverage markers.
-
Simplify integer value retrieval by introducing a templated `value` method in the `Integer` class. Replace redundant exception handling logic across multiple functions with this unified approach. Streamline type conversions and improve readability.
-
…ng handling with `qpdf::String`, and clean up `Members` class implementation.
-
…sting return values for uninitialized objects, and cleaning up error handling logic.
-
…eplacing redundant logic with centralized functions, and streamlining bad token handling for improved readability and maintainability.
-
…raints, replacing hardcoded values for nesting, container size, and error limits.
-
… simplify logic. Update related test outputs and release notes.
-
Added `qpdf::String` class to encapsulate string operations. Updated `QPDFObjectHandle` string methods to utilize `qpdf::String`, streamlined empty string handling, and removed redundant test coverage entries.
-
…DFObjectHandle` storage, remove unused trace calls, and streamline invalid handle checks.
-
… and `findEndstream` to `Objects`, remove `QPDF::PatternFinder` class, and update related logic for improved encapsulation.
-
…` parameter, update conditional checks, and streamline logic for field and annotation handling. Tighten validation of the PDF spec requirements that form fields form a tree and that widget annotations have a single parent by utilizing `field_to` and `annotation_to_field` in the loop detection check.
-
… parameter handling, and adjust related method calls for improved maintainability and readability.
-
…c across `QPDFWriter` for consistency and improved readability.
-
…isting code used 'last_object_description' and reported the error against a random unrelated object.