SetaPDF Released in Version 2.43.0.18992023-12-11
The year is coming to an end and we're releasing our last SetaPDF version for 2023. It comes with some bugfixes for very rare situations and mostly tweaks for stability.
We are also finally shipping trial versions for PHP 8.2 as of this version.
Merry Christmas and a Happy New Year from the Team of Setasign!
Check the release notes of the components below.
Log in to download the latest version of the related packages!
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-Extractor Component
Bugfix
- Fixed grouping text items by their orientation if its value is "negative zero".
Tweak
- Moved duplicated code of sorter classes into the main class.
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-FormFiller Component
Tweak
- Refactored code to make use of methods from the Core package instead of direct implementations (SetaPDF_Core_Document_Catalog_Pages::getPageByAnnotation(), SetaPDF_Core_Document_Page_Annotations::remove(), SetaPDF_Core_Document_Catalog_AcroForm::delete()).
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-FormFiller Component
Tweak
- Refactored code to make use of methods from the Core package instead of direct implementations (SetaPDF_Core_Document_Catalog_Pages::getPageByAnnotation(), SetaPDF_Core_Document_Page_Annotations::remove(), SetaPDF_Core_Document_Catalog_AcroForm::delete()).
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-Signer Component
Feature
- Added static delete() and clear() methods to SetaPDF_Signer_SignatureField class.
Tweak
- Explicitly cast parameter to string in SetaPDF_Signer_Asn1_Element::parse() method.
- Made allowed content-types of timestamp server responses configurable through the $allowedResponseContentTypes property of the SetaPDF_Signer_Timestamp_Module_Rfc3161_Curl class.
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).
Version 2.43.0.1899
Release date: 2023-12-11
Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
---|
SetaPDF-Core Component
Feature
- Added delete() method in SetaPDF_Core_Document_Catalog_AcroForm which allows you to remove/delete form field information from the AcroForm entry.
Bugfix
- Fixed getCalculationOrderArray() in SetaPDF_Core_Document_Catalog_AcroForm to not create a CO entry if $create parameter is set to false.
- Aligned fseek() behavior in stream reader class for different stream types/stream wrappers.
Tweak
- Handle text operators without a text object in text graphic state.
- Code style, doc-block optimizations and cleanup.
- Make use of SetaPDF_Core::isZero() method.
- Optimized getPageByAnnotation() method in SetaPDF_Core_Document_Catalog_Pages to use the /P entry of an annotation, if available.
- Make use of SetaPDF_Core_Type_Array::indexOf() instead of a manual search in SetaPDF_Core_Document_Page_Annotations:: remove() method.
- Fixed and optimized getPageNumberByIndirectObject() in SetaPDF_Core_Document_Catalog_Pages if called with an object of another document instance.
- Increased default nesting level of graphic states to 100 (the limit was removed in PDF 2.0 completely).
- Harden data types in SetaPDF_Core_Type_Stream::_applyFilter() method.
- Added possibility to ignore faulty stream on a lower level in StreamProxyInterface implementations.
- Optimized handling of uncommon flate encoded streams (Optimized fallback logic).