-
Notifications
You must be signed in to change notification settings - Fork 10.4k
Closed
Labels
Description
This is a tracking issue only, so this is not the place for any other questions or discussions. Open a new issue for that.
This is a meta issue for interactive form (AcroForm) support according to Chapter 12.7 of the PDF reference (http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/PDF32000_2008.pdf#G11.2110737). This includes all form elements except for signature fields, which are tracked in #1076. The objective is to get https://github.com/mozilla/pdf.js/blob/master/test/pdfs/f1040.pdf.link to render completely, but also to resolve other open issues and PRs.
General
- Prepare core and display layer for implementing form elements (Improve the structure for widget annotations #7596)
- Reference testing (Render interactive form (AcroForm) text widget annotations #7602)
- Preference (Render interactive form (AcroForm) text widget annotations #7602)
- Remove global
PDFJS.renderInteractiveForms
usage (Interactive forms: remove global PDFJS usage #7640) - Refactor field name construction code in
WidgetAnnotation
(Widget annotation: implement field name according to the specification #7775) - Refactor or clarify where annotations are rendered
- Mostly in the display layer, but text widget annotations with appearance streams are rendered in the core layer, which causes confusion...
- Appearances
- Storing entered values for when the page is destroyed when it is not visible
- Printing entered values
- Either print the HTML elements or render the contents onto the canvas (use
appendToOperatorList
)
- Either print the HTML elements or render the contents onto the canvas (use
- Enable by default
- Update the example (Interactive forms: rewrite AcroForms example #8030)
- Add Firefox pref to enable/disable forms (https://bugzilla.mozilla.org/show_bug.cgi?id=1652145)
Text widgets
- Rendering of single-line fields (Render interactive form (AcroForm) text widget annotations #7602)
- Handle maximum length (Text widget annotations: implement maximum length and text alignment #7622)
- Handle flags: multiline and read-only (Text widget annotations: support read-only/multiline fields and improve testing #7633)
- Handle flags: comb (Text widget annotations: implement comb support #7649)
- Handle justification (Text widget annotations: implement maximum length and text alignment #7622)
- Sanitize
maxLen
andtextAlignment
in the core layer and unit tests for this (Text widget annotations: implement unit testing and sanitize data values #7629)
Choice widgets
- Rendering of combo boxes (Interactive forms: render choice widget annotations #7671)
- Rendering of list boxes (Interactive forms: render choice widget annotations #7671)
Button widgets
- Rendering of pushbuttons (Button widget annotations: implement support for pushbuttons #9191)
- Rendering of checkboxes (Interactive forms: render button widget annotations (checkboxes and radio buttons) #7898)
- Rendering of radio buttons (Interactive forms: render button widget annotations (checkboxes and radio buttons) #7898)
automatedbugreportingfacility, xrkolovos, benweet, SamyCookie, btecu and 71 morejethrogb, jnachtigall, jeremypress, Glavin001, duttyend and 4 morejnachtigall, anujgeek, MurzNN, urijah, anfuca and 16 moredirdi