* Track runes in IdentityEncoder (for subsetting), track decoded runes
* Working with the identity encoder in font_composite.go
* Add GetFilterArray to multi encoder. Add comments.
* Add NewFromContents constructor to extractor only requiring contents and resources
* golint fixes
* Optimizer compress streams - improved detection of raw streams
* Optimize - CleanContentStream optimizer that removes redundant operands
* WIP Optimize - clean fonts
Will support both font file reduction and subsetting. (WIP)
* Optimize - image processing - try combined DCT and Flate
* Update options.go
* Update optimizer.go
* Create utils.go for optimize with common methods needed for optimization
* Optimizer - add font subsetting method
Covers XObject Forms, annotaitons etc. Uses extractor package to extract text marks covering what fonts and glyphs are used. Package truetype used for subsetting.
* Add some comments
* Fix cmap parsing rune conversion
* Error checking for extractor. Add some comments.
* Update Jenkinsfile
* Update modules
* Fix combo field appearances not being shown
* Fix V object type for choice and button fields
* Refactor form fill for combo and checkbox fields
* Add fill test case for text, combo and checkbox fields
* Prevent panic when flattening forms using a nil appearance generator
* Add configurable fallback font support for form fill/flatten
* Add appearance font to AcroForm DR
* Refactor DA process method
* Remove unnecessary font default size variable
* Minor refactor in the appearance generation functions
* Improve processDA appearance style method
* Use original font container if present in DR
* Maintain original appearance font autosizing behavior
* Fixed filename:page in logging
* Got CMap working for multi-rune entries
* Treat CMap entries as strings instead of runes to handle multi-byte encodings.
* Added a test for multibyte encoding.
* Changed rune->CharCode maps to string->CharCode.
* Removed unintentional changes.
* Updated comments to match new function definitions.
* Changed some []rune APIs to string
* Fixes for reviewer comments.
* Use page indirect object for internal outlines
* Use page indirect object in creator outline destinations
* Adapt creator test case to test outline creation and retrieval
* Update unitype lib which improves subsetting
* Add text extraction check to creator font subsetting example
Helps ensure ToUnicode map is set correctly.
* Clean up import
* Fix spelling
* Subsetting of TrueType CID fonts using unitype
* Simplify call to SubsetRegistered so can be done right after loading font via creator finalizer
* Add an EnableFontSubsetting function on the creator to simplify font subsetting for creator users
* Add invoice address heading field
* Update invoice test cases
* Add default value to buyer address heading
* Add Street2 and State address fields
* Add configurable address separator field
* Improve invoice test cases
* Add support for multi-block styled paragraphs
* Fix context space when drawing division inside tables
* Update context height when drawing tables
* Update advanced invoice test case
* Add basic multi-block styled paragraph test case
* Parse form fields with embedded widget annotations
* Try matching fields both by partial and full names on form fill
* Use default font if widget font is not found when generating appearance
* Add JSON extract and fill test case
* Add reader method for retriving the PageLabels entry from the catalog
* Add writer method for setting the PageLabels entry in the catalog.
* Add creator method for adding page labels for the output file
* Add creator page labels test case
* Minor page labels test case correction