Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support AcroForm Creation, Filling, and Reading #599

Merged
merged 110 commits into from
Sep 13, 2020
Merged

Support AcroForm Creation, Filling, and Reading #599

merged 110 commits into from
Sep 13, 2020

Conversation

Hopding
Copy link
Owner

@Hopding Hopding commented Sep 13, 2020

This is a big one. Took far longer than expected.

@Hopding Hopding merged commit 581d87e into master Sep 13, 2020
@Hopding Hopding deleted the AcroForms branch November 7, 2020 19:44
Hopding added a commit that referenced this pull request Aug 30, 2021
* WIP

* Model AcroForm button fields

* Add appearances for check boxes and radio buttons

* WIP

* Add appearances for push buttons

* WIP: Add text field appearances

* Model AcroComboBox and AcroListBox

* WIP: PDFAcroChoice set/get values

* PDFAcroChoice set/get options

* Add api/form models

* Add PDFRadioGroup setters/getters

* Add PDFCheckBox setters/getters

* WIP: Add PDFDropdown setters/getters

* Fix PDFDropdown setters/getters

* Add PDFField flag getters/setters

* Add PDFTextField getters/setters

* Add PDFCheckBox appearance streams

* Cleanup AppearanceProvider code

* Handle rotations in PDFCheckBox appearances

* Add PDFRadioGroup appearances

* Add PDFButton appearances

* Add PDFTextField appearances

* Add PDFDropdown appearances

* WIP

* Add PDFOptionList appearances

* Support radio button creation and adding options

* Support checkbox creation

* Support button creation

* Support dropdown creation

* Support option list creation

* Support text field creation

* Support acroforms on new documents

* Cleanup

* Cleanup

* Cleanup and add additional PDFButton.addToPage() properties

* Cleanup appearances code

* WIP: Cleanup widget options logic

* Cleanup TextField widget options logic

* Finish cleaning up widget options logic

* Handle default appearances on fields

* Cleanup

* WIP: Support removing radio buttons

* Add PDFDropdown.addOptions

* WIP

* WIP: Lazily update field appearances

* Finish lazily updating field appearances

* Fix error TODOs

* Add argument validators

* Update @pdf-lib/standard-fonts and fix regex matching

* Cleanup TODOs; Store ref on PDFAcro* models

* Cleanup

* Cleanup api/** imports

* Cleanup core/** imports

* Cleanup core/annotation/** imports

* Cleanup

* Cleanup circular imports

* Add apps:node test14

* Add node integration tests 14 and 15

* Support image button fields

* Fix image positioning in buttons

* Finish dod character sheet test

* Start node test 16

* Cleanup

* WIP

* Fill in tax form values for test

* Fixup checkbox APs

* Test custom field creation

* More form tests

* Add form ITs to all environments

* Add PDFForm test

* Add more form testsgs

* Add form unit tests

* Add custom appearance provider test

* Update test17 in all envs

* Fix TODOs

* Cleanup imports

* Add doc comments

* Update doc comments

* Update doc comments

* Update doc comments

* Add doc comments

* Add doc comments

* Fix radio group flags; Add doc comments

* Add doc comments

* Add doc comments

* Add doc comments

* Add doc comments

* Update doc comments

* Update tests

* Fix PDFButton.setImage

* Add fill form example to README

* Add form creation example

* Update create form example

* Update create form example

* Add section about fonts and unicode

* Add section about form filling

* README cleanup

* Make widget font optional

* Fix test

* Add limitations to README

* Add more form unit tests

* Update README.md

* Cleanup

* Bump @pdf-lib/standard-fonts version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant