Version 2.48.0.2155 of SetaPDF Is Available2025-06-19
In our last release we implemented namespaces and created aliases for the "old" class names. In this release we completed the transition to namespaces and the whole code base uses the fully qualified class names and no aliases anymore. For sure the aliases still exist and there are no backwards compatibility issues if you use the old class names.
We also tweaked and fixed other things, that you can find in the release notes below.
Check the release notes of the components below.
Log in to download the latest version of the related packages!
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-Extractor Component
Feature
- Added
Extractor::getResultByPage()method. - Added
getResultByTextItems()method to all available strategies to allow filtering a result several times. - Added
Extractor::getTextItemsByPage()method.
Bugfix
- Fixed infinite loop through circular references in form XObjects.
Tweak
- Changed all internal used class names to new namespaced variation.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-FormFiller Full Component
Feature
- Added
$forceparameter inXfa::syncDataNode()method, to support synchronization of modification of theDOMNodereturned byXFA::getData().
Bugfix
- Fixed checksum calculation in
<xfa:form>tag by sanitizing the XFA data package (remove duplicated namespace declarations created by PHPs DOM functionalities). - Support filling of static forms with intermediate subforms without data-binding and a data connection/data description.
- Added support for namespaced data-packages in static XFA forms.
Tweak
- Changed all internal used class names to new namespaced variation.
- Extended
Field\AppearanceValueCallbackInterfaceinterface withgetAdditionalActions()method and implemented its usage inField\Formatterclass.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-FormFiller Lite Component
Feature
- Added
$forceparameter inXfa::syncDataNode()method, to support synchronization of modification of theDOMNodereturned byXFA::getData().
Bugfix
- Fixed checksum calculation in
<xfa:form>tag by sanitizing the XFA data package (remove duplicated namespace declarations created by PHPs DOM functionalities). - Support filling of static forms with intermediate subforms without data-binding and a data connection/data description.
- Added support for namespaced data-packages in static XFA forms.
Tweak
- Changed all internal used class names to new namespaced variation.
- Extended
Field\AppearanceValueCallbackInterfaceinterface withgetAdditionalActions()method and implemented its usage inField\Formatterclass.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-Merger Component
Tweak
- Changed all internal used class names to new namespaced variation.
- Throw a
Merger\Exceptionif the PDF that should be handled has zero pages.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-Signer Component
Feature
- Added
setLineHeightFactor()andgetLineHeightFactor()methods toAppearance\Dynamicto allow control over the line-height calculation. - Addes
setText()andgetText()methods to allow individual text inAppearance\Dynamicclass.
Bugfix
- Fixed document comparision in
TmpDocumentclass if string reader were in use. - Change the
$saveMethodparameter internally toDocument::SAVE_METHOD_UPDATEif a rewrite is not allowed due to existing signatures or usage rights (done by the new staticSigner::sanitizeSaveMethod()method).
Tweak
- Changed all internal used class names to new namespaced variation.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
Version 2.48.0.2155
Release date: 2025-06-19
| Filename | Download | Composer
[ ? Use following minimal composer.json file to install a package through Composer. |
Information |
|---|
SetaPDF-Stamper Component
Tweak
- Changed all internal used class names to new namespaced variation.
SetaPDF-Core Component
Feature
- Added support for Tiff predictor (only 8 bits-per-component).
Bugfix
- Fixed cleanup of XMP packet wrapper.
- Fixed creation of compressed object streams for new created objects.
- Fixed behavior in creation of object streams with objects of foreign document instances which are referenced later again.
- Ensure a stream object in
Page::toXObject()to prevent "__clone method called on non-object" error (raised only in faulty documents).
Tweak
- Changed all internal used class names to new namespaced variation.
- Moved Kids array in tree structures into an indirect object instead of a direct object.
- Cache IDTree instance in
StructTreeRootclass. - Removed unnecessary memoization of cross-reference entries to save memory.
- Optimized the creation of compressed cross-reference streams in view to memory consumption.
- Changed parsing of hex strings to a token-based form to ignore whitespaces and comments directly.
