HexaPDF v0.14.0 Release Notes
Release Date: 2020-12-30 // over 3 years ago-
โ Added
- ๐ Support for creating AcroForm multiline text fields and their appearances
- ๐ Support for creating AcroForm comb text fields and their appearances
- ๐ Support for creating AcroForm password fields and their appearances
- ๐ Support for creating AcroForm file select fields and their appearances
- ๐ Support for creating AcroForm list box appearances
- [HexaPDF::Type::AcroForm::ChoiceField#list_box_top_index] and its setter method
- โก๏ธ [HexaPDF::Type::AcroForm::ChoiceField#update_widgets] to create appearances if they don't exist
- Methods for caching data to [HexaPDF::Object]
- ๐ Support for splitting by page size to CLI command
hexapdf split
๐ Changed
- [HexaPDF::Utils::ObjectHash#oids] to be public instead of private
- ๐ Cross-reference table parsing to handle invalidly numbered main sections
- โก๏ธ [HexaPDF::Document#cache] and [HexaPDF::Object#cache] to allow updating values for existing keys
- Appearance creation methods of AcroForm objects to allow forcing the creation of new appearances
- [HexaPDF::Type::AcroForm::AppearanceGenerator#create_text_appearances] to re-use existing form objects
- AcroForm field creation methods to allow specifying often used field properties
๐ Fixed
- Missing usage of
:sort
flag for AcroForm choice fields - Setting the
/I
field for AcroForm list boxes with multiple selection - ๐ [HexaPDF::Layout::TextLayouter::SimpleLineWrapping] to remove glue items (whitespace) before a hard line break
- Infinite loop when reconstructing the cross-reference table
- ๐ [HexaPDF::Type::AcroForm::ChoiceField] to support export values for option items
- AcroForm text field appearance creation to only create a new appearance if the field's value has changed
- AcroForm choice field appearance creation to only create a new appearance if the involved dictionary fields' values have changed
- [HexaPDF::Type::AcroForm::ChoiceField#list_box_top_index=] to raise an error if no option items are set
- [HexaPDF::PDFArray#to_ary] to return an array with preprocessed values
- [HexaPDF::Type::Form#contents=] to clear cached values to avoid returning e.g. an invalid canvas object later
- โก๏ธ [HexaPDF::Type::AcroForm::ButtonField#update_widgets] to create appearances if they don't exist