We released all SetaPDF components in new minor versions!
Beside several bug fixes, small features and tweaks in the SetaPDF-Core component the main reason for this release is the new functionality in the SetaPDF-Signer component that allows you to gather and embed validation related information, such as OCSP responses, CRLs and certificates for LTV (Long-Term Validation).
What does Long-Term Validation mean? We try to explain it in some simple sentences: Each certificate has a fixed period of validity. Also the infrastructure which allows you to ask for revocation information of a certificate may have a limited life-time. Generally speaking: It may be not possible to validate a certificate in the future. The idea behind LTV is that all involved information which was used to validate a signature at a given time are collected and saved. This can be done by embedding them into the PDF itself. The resulting PDF document can be re-signed by a document level timestamp signature then to proof the status at the given date and time. If you want to know more details, please take a look at the current PAdES standard.
The documentation about these new features is available here.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Signer Component
Feature
Added classes and functionalities to gather VRI (validation related information) to create LTV (long term validation) enabled signatures and timestamps. Several new classes for e.g. handling of CMS containers, OCSP requests and responses, X509 collections, CRLs, certificates and extensions were added.
Added set/getGraphicColor() and set/getTextColor() methods to SetaPDF_Signer_Signature_Appearance_Dynamic class.
Bugfix
Order signed attributes for DER encoding in Cms module.
Tweak
Fixed naming of signature field if it was created manually (encoding issue).
Optimized nonce generation in Rfc3161 timestamp module.
Added support for signature fields with its annotation in a Kids array.
Refactored internal functionalities to use class instances instead of raw ASN.1 structures (Certificates, OCSP responses, CRLs).
Refactored internal functionalities to use class instances instead of raw ASN.1 structures (Timstamp responses and tokens).
Demo
Removed X509 helper class and replaced usage with native functionalities of the component.
Rewritten validation proof-of-concept with more reliable validation functionalities of the component.
Updated document level timestamp signature demo with resolving of validation related information to gain LTV level.
Added demo that resolves validation related information and embed them into a document security store to gain long term validation (LTV) level.
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
Use following minimal composer.json file to install a package through
Composer.
]
Information
SetaPDF-Stamper Component
Bugfix
Fixed invalid graphic state for a very uncommon edge case (page is rotated, $underlay parameter is used in the stamp object and 2 stamper instances are in use).
SetaPDF-Core Component
Feature
Added Screen annotation class.
Added Caret annotation class.
Added SetaPDF_Core_Document_Catalog_MarkInfo and SetaPDF_Core_Document_Catalog_StructTreeRoot classes and getter methods to the catalog class.
Added SetaPDF_Core_Resource_PropertyList class.
Allow SetaPDF_Core_Type_*::toPdfString() to be called without a document instance as an argument (if possible) to be able to write PDF objects to a content stream.
Added getLang() and setLang() methods to catalog class.
Bugfix
Ignore undefined indirect references when an Annots array of a page is resolved.
Resolve indirect reference for /BBox entry in form XObject.
Ignore missing objects in Info class.
Handle deleted objects when parsing cross-references over several revisions.
Fixed setting of metadata in Catalog dictionary if the existing value is not a stream object.
Ensure correct object type of AcroForm entry.
Fixed justify alignment with line breaks in text.
Tweak
Refactored all SetaPDF_Core_Type_Null instances to a single instance.
Optimized handling of faulty PDF documents (handle shifted object numbers in previous xref, resolve latest /Root in corrupted xref parser).
Added fallback to PDF date-time parsing to support non-PDF conforming declarations.
Use transliteration when decoding PDF strings to avoid an E_NOTICE if illegal characters are found.
Handle streams with invisible content (white signs) and a length of 0.
Throw correct exception if the /BBox entry of a form XObject is missing.
Check and ensure valid data-type in /Annots entry of a page.
Allow dictionary or resource to be used in SetaPDF_Core_Canvas_MarkedContent::begin() method.
Optimized string and number tree structure generation (arrangement).
Support authentication at encrypted documents without a file identifier.
Added support for handling tokens prefixed with several minus signs as numeric values.
Demo
Added more information in "get color-spaces" demo.
Fixed type-hint in setFont() method in TextField class.
This website makes use of cookies to enhance browsing experience and provide additional functionality.
For more details please see our
Data Privacy Statement
(German).