[latex3-commits] [git/LaTeX3-latex3-pdfresources] backendtest: forms ... (ddd61cb)

Ulrike Fischer fischer at troubleshooting-tex.de
Sun Sep 8 00:58:52 CEST 2019


Repository : https://github.com/latex3/pdfresources
On branch  : backendtest
Link       : https://github.com/latex3/pdfresources/commit/ddd61cbccdfbba2429253b9491e3a9a90eedc373

>---------------------------------------------------------------

commit ddd61cbccdfbba2429253b9491e3a9a90eedc373
Author: Ulrike Fischer <fischer at troubleshooting-tex.de>
Date:   Sun Sep 8 00:58:52 2019 +0200

    forms ...


>---------------------------------------------------------------

ddd61cbccdfbba2429253b9491e3a9a90eedc373
 experiments/formfields.tex                         |  10 +-
 experiments/formradiofields.tex                    |  29 ++
 experiments/formtextfields.tex                     |  47 +--
 hgeneric-experimental.def                          | 104 ++++---
 .../formtextfields.luatex.tpf                      | 288 ++++++++++---------
 testfiles/formtextfields.pvt                       |  16 ++
 .../formtextfields.tpf                             | 288 ++++++++++---------
 testfiles/formtextfields.xetex.tpf                 | 318 +++++++++++++++++++++
 8 files changed, 736 insertions(+), 364 deletions(-)

diff --git a/experiments/formfields.tex b/experiments/formfields.tex
index fcac752..f0c16aa 100644
--- a/experiments/formfields.tex
+++ b/experiments/formfields.tex
@@ -7,11 +7,11 @@
 \usepackage{xcolor,tikzducks,tikzlings,graphics}
 \begin{document}
 \ExplSyntaxOn
-\MakeFieldObject
-       {
-         \fbox{\tikz\duck;}
-       }
-       {xform_DuckCheckmark}
+	\MakeFieldObject
+	       {
+	         \fbox{\tikz\duck;}
+	       }
+	       {xform_DuckCheckmark}
 \MakeFieldObject
        {
          \fbox{\tikz\bear;}
diff --git a/experiments/formradiofields.tex b/experiments/formradiofields.tex
new file mode 100644
index 0000000..d8167fd
--- /dev/null
+++ b/experiments/formradiofields.tex
@@ -0,0 +1,29 @@
+% !Mode:: "TeX:DE:UTF-8:Main"
+\RequirePackage[enable-debug,check-declarations]{expl3}
+\RequirePackage[patches]{pdfresources}
+\DeclareDocumentMetaData{uncompress,pdfversion=2.0}
+\documentclass{article}
+\usepackage{tikzducks}
+\usepackage[customdriver=hgeneric-experimental]
+{hyperref}
+\ExplSyntaxOn
+\tl_set:Nn \l__hyp_RadioYes_tl { xform_DuckRadio }      
+\ExplSyntaxOff
+\begin{document}
+\MakeFieldObject
+       {
+         \fbox{\tikz\duck;}
+       }
+       {xform_DuckRadio}
+%
+
+
+
+\begin{Form}%[NeedAppearances=false] %radio buttons don't like this ...
+
+\ChoiceMenu[default=A,radio,name={myGroupOfRadiobuttons}]{}{A,B,C}
+\ChoiceMenu[radio,radiosymbol=\ding{52},name={myGroupOfRadiobuttons}]{}{B}
+%\ChoiceMenu[radio,radiosymbol=\ding{52},name={myGroupOfRadiobuttons}]{}{C}
+
+\end{Form}
+\end{document}
diff --git a/experiments/formtextfields.tex b/experiments/formtextfields.tex
index ff12cab..20b2618 100644
--- a/experiments/formtextfields.tex
+++ b/experiments/formtextfields.tex
@@ -4,32 +4,9 @@
 \DeclareDocumentMetaData{uncompress}
 \documentclass{article}
 \usepackage[customdriver=hgeneric-experimental]{hyperref}
-%\usepackage{xcolor,tikzducks,tikzlings,graphics}
+
 \begin{document}
-%\ExplSyntaxOn
-%\MakeFieldObject
-%       {
-%         \fbox{\tikz\duck;}
-%       }
-%       {xform_DuckCheckmark}
-%\MakeFieldObject
-%       {
-%         \fbox{\tikz\bear;}
-%       }
-%       {xform_BearCheckmark}
-%
-% \MakeFieldObject
-%       {
-%         \phantom{\tikz\duck;}
-%       }
-%       {xform_NoDuckCheckmark}
-% \MakeFieldObject
-%       {
-%         \phantom{\tikz\bear;}
-%       }
-%       {xform_NoBearCheckmark}
-%
-%\ExplSyntaxOff
+
 
 \begin{Form}[NeedAppearances=false]
 
@@ -37,23 +14,3 @@
 
 \end{Form}
 \end{document}
-
-\LARGE\sffamily
-\CheckBox[name=check]{\makebox[4cm][l]{Check the mark!}}
-
-\bigskip
-\ExplSyntaxOn
-\tl_set:Nn \l__hyp_CheckmarkYes_tl {  xform_DuckCheckmark }
-\tl_set:Nn \l__hyp_CheckmarkOff_tl {  xform_NoDuckCheckmark }
-\ExplSyntaxOff
-\CheckBox[name=duck]{\makebox[4cm][l]{Check the duck!}}
-
-\ExplSyntaxOn
-\tl_set:Nn\l__hyp_CheckmarkYes_tl {xform_BearCheckmark}
-\tl_set:Nn\l__hyp_CheckmarkOff_tl {xform_NoBearCheckmark}
-\ExplSyntaxOff
-\bigskip
-\CheckBox[name=bear]{\makebox[4cm][l]{Check the bear!}}
-
-\end{Form}
-\end{document} 
\ No newline at end of file
diff --git a/hgeneric-experimental.def b/hgeneric-experimental.def
index 2536ea9..8219271 100644
--- a/hgeneric-experimental.def
+++ b/hgeneric-experimental.def
@@ -24,7 +24,7 @@
   {hyp}
   {pdfversion-disabled}
   { This~hyperref~driver~ignores~the~pdfversion~key!\\
-    Set~the~pdfversion~in~\token_to_str:N \documentsetup}
+    Set~the~pdfversion~in~\token_to_str:N \DeclareDocumentMetaData}
 
 \msg_new:nnn
   {hyp}
@@ -989,6 +989,18 @@
          \group_end:
        }
        {__hyp_xform_Ding}
+    \MakeFieldObject
+       {
+         \group_begin:
+         \fontfamily{pzd}
+         \fontencoding{U}
+         \fontseries{m}
+         \fontshape{n}
+         \selectfont
+         \phantom{\char123}
+         \group_end:
+       }
+       {__hyp_xform_DingOff}
      \MakeFieldObject
        {
          \group_begin:
@@ -1009,7 +1021,7 @@
          \fontseries{m}
          \fontshape{n}
          \selectfont
-         \fbox{\char55} %perhaps xetex needs some small glyph ..
+         \phantom{\char51} %perhaps xetex needs some small glyph ..
          \group_end:
        }
        {__hyp_xform_CheckMarkOff}
@@ -1089,17 +1101,11 @@
           {\Fld at height}
           {0pt} %is this correct?
           {\PDFForm at Text}
-     % \pdf_link_user:nnn
-%       {widget} %perhaps we need more types??
-%       {\PDFForm at Text}
-%       {
-%       \MakeTextField{\Fld at width}{\Fld at height}
-%       }
       \HyField at AddToFields
     }%
   \endgroup
 }
-
+\providecommand\@curropt{}
 \def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
   \def\Fld at name{#2}
   \let\Fld at default\relax
@@ -1111,13 +1117,13 @@
     \@tempdima\z@
     \clist_map_variable:nNn { #3 } \@curropt
     %\@for\@curropt:=#3\do
-    {%
-      \expandafter\Fld at checkequals\@curropt==\\%
-      \Hy at StepCount\Fld at menulength
-      \settowidth{\@tempdimb}{\@currDisplay}%
-      \ifdim\@tempdimb>\@tempdima\@tempdima\@tempdimb\fi
-    }%
-    \advance\@tempdima by 15\p@
+      {%
+        \expandafter\Fld at checkequals\@curropt==\\%
+        \Hy at StepCount\Fld at menulength
+        \settowidth{\@tempdimb}{\@currDisplay}%
+        \ifdim\@tempdimb>\@tempdima\@tempdima\@tempdimb\fi
+      }%
+    \advance\@tempdima by~15\p@
     \begingroup
       \HyField at SetKeys{#1}
     \edef\x{\endgroup
@@ -1161,8 +1167,8 @@
           \ifFld at combo
           \else
             \@tempdima=\the\Fld at menulength\Fld at charsize
-            \advance\@tempdima by \Fld at borderwidth bp %
-            \advance\@tempdima by \Fld at borderwidth bp %
+            \advance\@tempdima by~\Fld at borderwidth bp %
+            \advance\@tempdima by~\Fld at borderwidth bp %
             \edef\Fld at height{\the\@tempdima}%
           \fi
           \@@Listbox{#3}%
@@ -1171,9 +1177,11 @@
     }%
   \endgroup
 }
-
+\tl_new:N  \l__hyp_RadioYes_tl
+\tl_set:Nn \l__hyp_RadioYes_tl { __hyp_xform_Ding }
 \def\@@Radio#1{%
-  \Fld at listcount=0 %
+  \Fld at listcount=0~%
+  %\show\Fld at default
   \EdefEscapeName\Fld at default{\Fld at default}%
   \clist_map_variable:nNn { #1 } \@curropt
   %\@for\@curropt:=#1\do
@@ -1185,19 +1193,22 @@
     \leavevmode
     \HyAnn at AbsPageLabel
     \Hy at escapeform\PDFForm at Radio
-    \pdf_link_user:nnn
-      {widget} %perhaps we need more types??
+    \pdf_annotation:nnnn
+      {\Fld at width}
+      {\Fld at height}
+      {0pt} %is this correct?
       {
         \PDFForm at Radio
         /AP
          <<
          /N
           <<
-          /\@currValue\c_space_tl \pdf_xform_ref:n {__hyp_xform_Ding}
+          /\@currValue\c_space_tl \pdf_xform_ref:o {__hyp_xform_Ding}
+          %/Off \c_space_tl \pdf_xform_ref:n {__hyp_xform_DingOff} %hm
           >>
          >>
       }
-      {  \MakeRadioField{\Fld at width}{\Fld at height} }
+      {\fbox{  \MakeRadioField{\Fld at width}{\Fld at height}} }
      \int_compare:nNnT { \Fld at listcount} = { 1 }
       { \HyField at AddToFields }
     \c_space_tl % deliberate space between radio buttons
@@ -1657,19 +1668,21 @@
   \Fld at choices
   \Fld at additionalactions
 }
-\def\PDFForm at Radio{%
-  /Subtype/Widget%
-  \Fld at annotflags
-  \Fld at pageobjref
-  \Fld at annotnames
-  /FT/Btn%
-  \Fld at flags
-  /H/P%
-  /BS<</W \Fld at borderwidth/S/\Fld at borderstyle>>%
-  /MK<<%
+\ExplSyntaxOn
+\def\PDFForm at Radio
+  {
+    /Subtype/Widget
+    ~\Fld at annotflags
+    ~\Fld at pageobjref
+    ~\Fld at annotnames
+    /FT/Btn
+   \Fld at flags
+   /H/P
+   /BS<</W~\Fld at borderwidth/S/\Fld at borderstyle>>
+   /MK<<
     \ifnum\Fld at rotation=\z@
     \else
-      /R \Fld at rotation
+      /R~\Fld at rotation
     \fi
     \ifx\Fld at bordercolor\relax
     \else
@@ -1679,19 +1692,20 @@
     \else
       /BG[\Fld at bcolor]%
     \fi
-    /CA(\Hy at escapestring{\Fld at radiosymbol})%
-  >>%
-  /DA(/ZaDb \strip at pt\Fld at charsize\space Tf%
+     /CA(\Hy at escapestring{\Fld at radiosymbol})%
+    >>
+    /DA(/ZaDb~\strip at pt\Fld at charsize\space Tf%
       \ifx\Fld at color\@empty\else\space\Fld at color\fi)%
-  \ifx\Fld at default\@empty
+   \ifx\Fld at default\@empty
     /V/Off%
     /DV/Off%
-  \else
-   /V/\Fld at default
-   /DV/\Fld at default
-  \fi
-  \Fld at additionalactions
-}
+   \else
+    /V/\Fld at default
+    /DV/\Fld at default
+   \fi
+   \Fld at additionalactions
+ }
+\ExplSyntaxOff
 \ExplSyntaxOn
 % Does an appeareance dict make sense here?
 \def\PDFForm at Text
diff --git a/testfiles-noxetex/calculationsortorder.tpf b/testfiles/formtextfields.luatex.tpf
similarity index 55%
copy from testfiles-noxetex/calculationsortorder.tpf
copy to testfiles/formtextfields.luatex.tpf
index baef9a5..735da6c 100644
--- a/testfiles-noxetex/calculationsortorder.tpf
+++ b/testfiles/formtextfields.luatex.tpf
@@ -25,7 +25,47 @@ endobj
 << /Font << /F26 11 0 R >> /ProcSet [ /PDF /Text ] >>
 endobj
 12 0 obj
-<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 36.503 14.127 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 13 0 R /Length 328 >>        
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 7.522 7.183 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 13 0 R /Length 48 >>         
+stream
+BT
+/F26 9.96264 Tf
+1 0 0 1 0 0.13 Tm [(3)]TJ
+ET
+endstream
+endobj
+13 0 obj
+<< /Font << /F26 11 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+14 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 12.463 14.027 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 15 0 R /Length 305 >>        
+stream
+q
+1 0 0 1 0 13.828 cm
+[] 0 d 0 J 0.398 w 0 0 m 12.463 0 l S
+Q
+q
+1 0 0 1 0.199 0.398 cm
+[] 0 d 0 J 0.398 w 0 0 m 0 13.23 l S
+Q
+BT
+/F26 9.96264 Tf
+1 0 0 1 3.387 4.065 Tm [(7)]TJ
+ET
+q
+1 0 0 1 12.264 0.398 cm
+[] 0 d 0 J 0.398 w 0 0 m 0 13.23 l S
+Q
+q
+1 0 0 1 0 0.199 cm
+[] 0 d 0 J 0.398 w 0 0 m 12.463 0 l S
+Q
+endstream
+endobj
+15 0 obj
+<< /Font << /F26 11 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+16 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 36.503 14.127 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 17 0 R /Length 328 >>        
 stream
 q
 1 0 0 1 0 13.928 cm
@@ -49,11 +89,11 @@ q
 Q
 endstream
 endobj
-13 0 obj
-<< /Font << /F27 14 0 R >> /ProcSet [ /PDF /Text ] >>
+17 0 obj
+<< /Font << /F27 18 0 R >> /ProcSet [ /PDF /Text ] >>
 endobj
-15 0 obj
-<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 42.869 14.127 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 16 0 R /Length 331 >>        
+19 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 42.869 14.127 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 20 0 R /Length 331 >>        
 stream
 q
 1 0 0 1 0 13.928 cm
@@ -77,19 +117,15 @@ q
 Q
 endstream
 endobj
-16 0 obj
-<< /Font << /F27 14 0 R >> /ProcSet [ /PDF /Text ] >>
+20 0 obj
+<< /Font << /F27 18 0 R >> /ProcSet [ /PDF /Text ] >>
 endobj
 23 0 obj
-<< /Length 332 >>        
+<< /Length 144 >>        
 stream
 BT
-/F15 9.96264 Tf
-1 0 0 1 148.712 707.125 Tm [<003A001C004B004B001C006A>]TJ
-1 0 0 1 148.712 695.17 Tm [<003A001C004B004B001C>]TJ
-1 0 0 1 148.712 683.215 Tm [<003A001C004B004B001C006B>]TJ
-1 0 0 1 148.712 671.26 Tm [<001B00480054003F001C>]TJ
-1 0 0 1 148.712 647.349 Tm [<002200320069001C>]TJ
+/F25 9.96264 Tf
+1 0 0 1 148.712 707.125 Tm [<0041004D0062003200600069>-333<0068>83<003200740069>]TJ
 1 0 0 1 303.133 139.255 Tm [<0052>]TJ
 ET
 endstream
@@ -98,32 +134,10 @@ endobj
 << /Type /Page /Contents 23 0 R /Resources 22 0 R /MediaBox [ 0 0 595.276 841.89 ] /Parent 27 0 R /Annots 28 0 R >>
 endobj
 28 0 obj
-[ 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R ]
-endobj
-17 0 obj
-<< /Type /Annot /Rect [ 190.396 705.91 237.22 718.084 ]
- /Subtype/Widget/F 4/T(gamma3)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); var f_gamma = this.getField("gamma2"); event.value = f_alpha.value + f_beta.value +f_gamma.value; )>>>>/MaxLen 40
- >>
-endobj
-18 0 obj
-<< /Type /Annot /Rect [ 185.415 693.955 232.239 706.129 ]
- /Subtype/Widget/F 4/T(gamma)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); var f_gamma = this.getField("gamma2"); event.value = f_alpha.value + f_beta.value +f_gamma.value; )>>>>/MaxLen 40
- >>
-endobj
-19 0 obj
-<< /Type /Annot /Rect [ 190.396 681.999 237.22 694.174 ]
- /Subtype/Widget/F 4/T(gamma2)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); event.value = f_alpha.value + 2*f_beta.value; )>>>>/MaxLen 40
- >>
-endobj
-20 0 obj
-<< /Type /Annot /Rect [ 177.335 668.331 224.159 682.219 ]
- /Subtype/Widget/F 4/T(alpha)/FT/Tx/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V(0)/MaxLen 40
- >>
+[ 21 0 R ]
 endobj
 21 0 obj
-<< /Type /Annot /Rect [ 171.367 646.243 218.192 658.308 ]
- /Subtype/Widget/F 4/T(beta)/FT/Tx/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V(0)/MaxLen 40
- >>
+<< /Type /Annot /Subtype/Widget/F 4/P 5 0 R/T(text)/FT/Tx/Q 0/BS<</W 1 /S/S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf)/DV()/V() /Rect [ 200.538 707.125 285.577 719.08 ] >>
 endobj
 24 0 obj
 << /D [ 5 0 R /XYZ 132.768 754.95 null ] >>
@@ -132,45 +146,42 @@ endobj
 << /D [ 5 0 R /XYZ 133.768 717.088 null ] >>
 endobj
 22 0 obj
-<< /Font << /F15 26 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F25 26 0 R >> /ProcSet [ /PDF /Text ] >>
 endobj
 29 0 obj
-[ 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R ]
+[ 21 0 R ]
 endobj
 30 0 obj
-[ 18 0 R 19 0 R 17 0 R ]
+<< /ZaDb 7 0 R /Helv 8 0 R  >>
 endobj
 31 0 obj
-<< /ZaDb 7 0 R /Helv 8 0 R  >>
+<< /Font 30 0 R  >>
 endobj
 32 0 obj
-<< /Font 31 0 R  >>
+<< /DA (/Helv 10 Tf 0 g) /Fields 29 0 R /DR 31 0 R  >>
 endobj
 33 0 obj
-<< /DA (/Helv 10 Tf 0 g) /NeedAppearances true /Fields 29 0 R /CO 30 0 R /DR 32 0 R  >>
+[ 50 [ 444 ] 65 [ 361 ] 77 [ 556 ] 82 [ 500 ] 96 [ 392 ] 98 [ 394 ] 104 [ 722 389 ] 116 [ 528 ] ]
 endobj
-34 0 obj
-[ 27 [ 750 500 ] 34 [ 708 ] 50 [ 444 ] 58 [ 785 ] 63 [ 556 ] 72 [ 278 ] 75 [ 833 ] 82 [ 500 ] 84 [ 556 ] 105 [ 389 500 500 ] ]
-endobj
-36 0 obj
-<< /Length 14 >>         
+35 0 obj
+<< /Length 15 >>         
 [BINARY STREAM]
 endobj
-37 0 obj
-<< /Subtype /CIDFontType0C /Length 2094 >>       
+36 0 obj
+<< /Subtype /CIDFontType0C /Length 1569 >>       
 [BINARY STREAM]
 endobj
-35 0 obj
-<< /Type /FontDescriptor /FontName /XDDCZP+LMRoman10-Regular /Flags 4 /FontBBox [ -430 -290 1417 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 93 /XHeight 431 /FontFile3 37 0 R /CIDSet 36 0 R >>
+34 0 obj
+<< /Type /FontDescriptor /FontName /HEDGUE+LMRoman10-Regular /Flags 4 /FontBBox [ -430 -290 1417 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 93 /XHeight 431 /FontFile3 36 0 R /CIDSet 35 0 R >>
 endobj
-38 0 obj
-<< /Length 861 >>        
+37 0 obj
+<< /Length 804 >>        
 stream
 %!PS-Adobe-3.0 Resource-CMap
 %%DocumentNeededResources: ProcSet (CIDInit)
 %%IncludeResource: ProcSet (CIDInit)
-%%BeginResource: CMap (TeX-XDDCZP-LMRoman10-Regular-0)
-%%Title: (TeX-XDDCZP-LMRoman10-Regular-0 TeX XDDCZP-LMRoman10-Regular 0)
+%%BeginResource: CMap (TeX-HEDGUE-LMRoman10-Regular-0)
+%%Title: (TeX-HEDGUE-LMRoman10-Regular-0 TeX HEDGUE-LMRoman10-Regular 0)
 %%Version: 1.000
 %%EndComments
 /CIDInit /ProcSet findresource begin
@@ -178,30 +189,26 @@ stream
 begincmap
 /CIDSystemInfo
 << /Registry (TeX)
-/Ordering (XDDCZP-LMRoman10-Regular)
+/Ordering (HEDGUE-LMRoman10-Regular)
 /Supplement 0
 >> def
-/CMapName /TeX-Identity-XDDCZP-LMRoman10-Regular def
+/CMapName /TeX-Identity-HEDGUE-LMRoman10-Regular def
 /CMapType 2 def
 1 begincodespacerange
 <0000> <FFFF>
 endcodespacerange
 0 beginbfrange
 endbfrange
-13 beginbfchar
-<001B> <0041>
-<001C> <0061>
-<0022> <0042>
+9 beginbfchar
 <0032> <0065>
-<003A> <0047>
-<003F> <0068>
-<0048> <006C>
-<004B> <006D>
+<0041> <0049>
+<004D> <006E>
 <0052> <0031>
-<0054> <0070>
+<0060> <0072>
+<0062> <0073>
+<0068> <0054>
 <0069> <0074>
-<006A> <0033>
-<006B> <0032>
+<0074> <0078>
 endbfchar
 endcmap
 CMapName currentdict /CMap defineresource pop
@@ -212,26 +219,26 @@ end
 endstream
 endobj
 26 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /XDDCZP+LMRoman10-Regular /DescendantFonts [ 39 0 R ] /ToUnicode 38 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /HEDGUE+LMRoman10-Regular /DescendantFonts [ 38 0 R ] /ToUnicode 37 0 R >>
 endobj
-39 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /XDDCZP+LMRoman10-Regular /FontDescriptor 35 0 R /W 34 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+38 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /HEDGUE+LMRoman10-Regular /FontDescriptor 34 0 R /W 33 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
 endobj
-40 0 obj
+39 0 obj
 [ 35 [ 517 ] 66 [ 239 ] 75 [ 794 ] 83 [ 639 ] 97 [ 556 ] 105 [ 361 ] 109 [ 517 ] ]
 endobj
-42 0 obj
+41 0 obj
 << /Length 14 >>         
 [BINARY STREAM]
 endobj
-43 0 obj
+42 0 obj
 << /Subtype /CIDFontType0C /Length 1052 >>       
 [BINARY STREAM]
 endobj
-41 0 obj
-<< /Type /FontDescriptor /FontName /ISVPDC+LMSans10-Regular /Flags 4 /FontBBox [ -420 -309 1431 1154 ] /Ascent 1154 /CapHeight 694 /Descent -309 /ItalicAngle 0 /StemV 93 /XHeight 444 /FontFile3 43 0 R /CIDSet 42 0 R >>
+40 0 obj
+<< /Type /FontDescriptor /FontName /ISVPDC+LMSans10-Regular /Flags 4 /FontBBox [ -420 -309 1431 1154 ] /Ascent 1154 /CapHeight 694 /Descent -309 /ItalicAngle 0 /StemV 93 /XHeight 444 /FontFile3 42 0 R /CIDSet 41 0 R >>
 endobj
-44 0 obj
+43 0 obj
 << /Length 771 >>        
 stream
 %!PS-Adobe-3.0 Resource-CMap
@@ -273,97 +280,96 @@ end
 %%EOF
 endstream
 endobj
-14 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ISVPDC+LMSans10-Regular /DescendantFonts [ 45 0 R ] /ToUnicode 44 0 R >>
+18 0 obj
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ISVPDC+LMSans10-Regular /DescendantFonts [ 44 0 R ] /ToUnicode 43 0 R >>
 endobj
-45 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ISVPDC+LMSans10-Regular /FontDescriptor 41 0 R /W 40 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+44 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ISVPDC+LMSans10-Regular /FontDescriptor 40 0 R /W 39 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
 endobj
-46 0 obj
-[392 ]
+45 0 obj
+[755 0 0 0 571 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 392 ]
 endobj
-48 0 obj
-<< /Length1 1568 /Length2 967 /Length3 0 /Length 2535 >>       
+47 0 obj
+<< /Length1 1600 /Length2 1454 /Length3 0 /Length 3054 >>       
 [BINARY STREAM]
 endobj
-47 0 obj
-<< /Type /FontDescriptor /FontName /GCRMMP+Dingbats /Flags 4 /FontBBox [ -1 -143 981 819 ] /Ascent 708 /CapHeight 708 /Descent 0 /ItalicAngle 0 /StemV 0 /XHeight 400 /CharSet( /a97) /FontFile 48 0 R >>
+46 0 obj
+<< /Type /FontDescriptor /FontName /YMWQUJ+Dingbats /Flags 4 /FontBBox [ -1 -143 981 819 ] /Ascent 708 /CapHeight 708 /Descent 0 /ItalicAngle 0 /StemV 0 /XHeight 400 /CharSet( /a19 /a23 /a97) /FontFile 47 0 R >>
 endobj
 11 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /GCRMMP+Dingbats /FontDescriptor 47 0 R /FirstChar 123 /LastChar 123 /Widths 46 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /YMWQUJ+Dingbats /FontDescriptor 46 0 R /FirstChar 51 /LastChar 123 /Widths 45 0 R >>
 endobj
 27 0 obj
 << /Type /Pages  /Count 1 /Kids [ 5 0 R ] >>
 endobj
-49 0 obj
+48 0 obj
 << /Names [ (Doc-Start) 25 0 R (page.1) 24 0 R ] /Limits [ (Doc-Start) (page.1) ] >>
 endobj
+49 0 obj
+<< /Dests 48 0 R >>
+endobj
 50 0 obj
-<< /Dests 49 0 R >>
+<< /Type /Catalog /Pages 27 0 R /Names 49 0 R /PageMode /UseOutlines/OpenAction [5 0 R /Fit]/AcroForm 32 0 R >>
 endobj
 51 0 obj
-<< /Type /Catalog /Pages 27 0 R /Names 50 0 R /PageMode /UseOutlines/OpenAction [5 0 R /Fit]/AcroForm 33 0 R >>
-endobj
-52 0 obj
-<< /Producer (LuaTeX)/Author ()/Title ()/Subject ()/Creator (LaTeX with hyperref)/CreationDate ()/ModDate ()/Keywords () /Trapped /False >>
+<< /Author ()/Title ()/Subject ()/Creator (LaTeX with hyperref)/CreationDate ()/ModDate ()/Keywords () /Producer (LuaTeX-1.10.0) /Trapped /False /PTEX.FullBanner (This is LuaTeX, Version 1.10.0 (TeX Live 2019/W32TeX)) >>
 endobj
 xref
-0 53
+0 52
 0000000001 65535 f 
 0000000002 00000 f 
 0000000003 00000 f 
 0000000004 00000 f 
 0000000000 00000 f 
-0000003191 00000 n 
+0000003838 00000 n 
 0000000020 00000 n 
 0000001204 00000 n 
 0000001282 00000 n 
 0000001372 00000 n 
 0000001586 00000 n 
-0000014960 00000 n 
+0000014133 00000 n 
 0000001656 00000 n 
-0000002156 00000 n 
-0000011734 00000 n 
-0000002226 00000 n 
-0000002729 00000 n 
-0000003377 00000 n 
-0000003790 00000 n 
-0000004204 00000 n 
-0000004566 00000 n 
-0000004773 00000 n 
-0000005100 00000 n 
-0000002799 00000 n 
-0000004979 00000 n 
-0000005039 00000 n 
-0000009005 00000 n 
-0000015104 00000 n 
-0000003322 00000 n 
-0000005170 00000 n 
-0000005225 00000 n 
-0000005266 00000 n 
-0000005313 00000 n 
-0000005349 00000 n 
-0000005453 00000 n 
-0000007848 00000 n 
-0000005596 00000 n 
-0000005670 00000 n 
-0000008084 00000 n 
-0000009159 00000 n 
-0000009359 00000 n 
-0000010668 00000 n 
-0000009458 00000 n 
-0000009532 00000 n 
-0000010903 00000 n 
-0000011887 00000 n 
-0000012086 00000 n 
-0000014742 00000 n 
-0000012109 00000 n 
-0000015165 00000 n 
-0000015266 00000 n 
-0000015302 00000 n 
-0000015430 00000 n 
+0000001874 00000 n 
+0000001944 00000 n 
+0000002421 00000 n 
+0000002491 00000 n 
+0000002991 00000 n 
+0000010229 00000 n 
+0000003061 00000 n 
+0000003564 00000 n 
+0000003996 00000 n 
+0000004307 00000 n 
+0000003634 00000 n 
+0000004186 00000 n 
+0000004246 00000 n 
+0000007500 00000 n 
+0000014276 00000 n 
+0000003969 00000 n 
+0000004377 00000 n 
+0000004404 00000 n 
+0000004451 00000 n 
+0000004487 00000 n 
+0000004558 00000 n 
+0000006400 00000 n 
+0000004672 00000 n 
+0000004747 00000 n 
+0000006636 00000 n 
+0000007654 00000 n 
+0000007854 00000 n 
+0000009163 00000 n 
+0000007953 00000 n 
+0000008027 00000 n 
+0000009398 00000 n 
+0000010382 00000 n 
+0000010581 00000 n 
+0000013905 00000 n 
+0000010752 00000 n 
+0000014337 00000 n 
+0000014438 00000 n 
+0000014474 00000 n 
+0000014602 00000 n 
 trailer
-<< /Size 53 /Root 51 0 R /Info 52 0 R >>
+<< /Size 52 /Root 50 0 R /Info 51 0 R /ID [ <4F8A1C1AF444E8EC755322DC1D1D5C66> <4F8A1C1AF444E8EC755322DC1D1D5C66> ] >>
 startxref
-15586
+14839
 %%EOF
diff --git a/testfiles/formtextfields.pvt b/testfiles/formtextfields.pvt
new file mode 100644
index 0000000..20b2618
--- /dev/null
+++ b/testfiles/formtextfields.pvt
@@ -0,0 +1,16 @@
+% !Mode:: "TeX:DE:UTF-8:Main"
+\RequirePackage[enable-debug,check-declarations]{expl3}
+\RequirePackage[patches]{pdfresources}
+\DeclareDocumentMetaData{uncompress}
+\documentclass{article}
+\usepackage[customdriver=hgeneric-experimental]{hyperref}
+
+\begin{document}
+
+
+\begin{Form}[NeedAppearances=false]
+
+\TextField[name=text]{Insert Text}
+
+\end{Form}
+\end{document}
diff --git a/testfiles-noxetex/calculationsortorder.pdftex.tpf b/testfiles/formtextfields.tpf
similarity index 61%
copy from testfiles-noxetex/calculationsortorder.pdftex.tpf
copy to testfiles/formtextfields.tpf
index a380180..cff4b43 100644
--- a/testfiles-noxetex/calculationsortorder.pdftex.tpf
+++ b/testfiles/formtextfields.tpf
@@ -39,10 +39,72 @@ endobj
 <<
 /Type /XObject
 /Subtype /Form
-/BBox [0 0 36.496 13.693]
+/BBox [0 0 7.522 7.183]
 /FormType 1
 /Matrix [1 0 0 1 0 0]
 /Resources 13 0 R
+/Length 60        
+>>
+stream
+1 0 0 1 0 7.183 cm
+BT
+/F25 9.9626 Tf 0 -7.054 Td [(3)]TJ
+ET
+endstream
+endobj
+13 0 obj
+<<
+/Font << /F25 11 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+14 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 12.463 14.027]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 15 0 R
+/Length 317       
+>>
+stream
+q
+1 0 0 1 0 13.828 cm
+[]0 d 0 J 0.398 w 0 0 m 12.463 0 l S
+Q
+q
+1 0 0 1 0.199 0.398 cm
+[]0 d 0 J 0.398 w 0 0 m 0 13.23 l S
+Q
+1 0 0 1 0 14.027 cm
+BT
+/F25 9.9626 Tf 3.387 -9.962 Td [(7)]TJ
+ET
+q
+1 0 0 1 12.264 -13.629 cm
+[]0 d 0 J 0.398 w 0 0 m 0 13.23 l S
+Q
+q
+1 0 0 1 0 -13.828 cm
+[]0 d 0 J 0.398 w 0 0 m 12.463 0 l S
+Q
+endstream
+endobj
+15 0 obj
+<<
+/Font << /F25 11 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+16 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 36.496 13.693]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 17 0 R
 /Length 325       
 >>
 stream
@@ -68,20 +130,20 @@ q
 Q
 endstream
 endobj
-13 0 obj
+17 0 obj
 <<
-/Font << /F26 14 0 R >>
+/Font << /F26 18 0 R >>
 /ProcSet [ /PDF /Text ]
 >>
 endobj
-15 0 obj
+19 0 obj
 <<
 /Type /XObject
 /Subtype /Form
 /BBox [0 0 42.862 13.693]
 /FormType 1
 /Matrix [1 0 0 1 0 0]
-/Resources 16 0 R
+/Resources 20 0 R
 /Length 326       
 >>
 stream
@@ -107,19 +169,19 @@ q
 Q
 endstream
 endobj
-16 0 obj
+20 0 obj
 <<
-/Font << /F26 14 0 R >>
+/Font << /F26 18 0 R >>
 /ProcSet [ /PDF /Text ]
 >>
 endobj
 23 0 obj
 <<
-/Length 180       
+/Length 93        
 >>
 stream
 BT
-/F8 9.9626 Tf 148.712 707.125 Td [(Gamma3)]TJ 0 -11.955 Td [(Gamma)]TJ 0 -11.955 Td [(Gamma2)]TJ 0 -11.955 Td [(Alpha)]TJ 0 -23.911 Td [(Beta)]TJ 154.421 -508.094 Td [(1)]TJ
+/F8 9.9626 Tf 148.712 707.125 Td [(Insert)-333(T)83(ext)]TJ 154.421 -567.87 Td [(1)]TJ
 ET
 endstream
 endobj
@@ -130,42 +192,14 @@ endobj
 /Resources 22 0 R
 /MediaBox [0 0 595.276 841.89]
 /Parent 27 0 R
-/Annots [ 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R ]
->>
-endobj
-17 0 obj
-<<
-/Type /Annot
-/Rect [190.403 706.129 237.228 718.084]
-/Subtype/Widget/F 4/P 5 0 R/T(gamma3)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); var f_gamma = this.getField("gamma2"); event.value = f_alpha.value + f_beta.value +f_gamma.value; )>>>>/MaxLen 40
->>
-endobj
-18 0 obj
-<<
-/Type /Annot
-/Rect [185.422 694.174 232.246 706.129]
-/Subtype/Widget/F 4/P 5 0 R/T(gamma)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); var f_gamma = this.getField("gamma2"); event.value = f_alpha.value + f_beta.value +f_gamma.value; )>>>>/MaxLen 40
->>
-endobj
-19 0 obj
-<<
-/Type /Annot
-/Rect [190.403 682.219 237.228 694.174]
-/Subtype/Widget/F 4/P 5 0 R/T(gamma2)/FT/Tx/Ff 1/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V()/AA<</C<</S/JavaScript/JS(var f_alpha = this.getField("alpha"); var f_beta = this.getField("beta"); event.value = f_alpha.value + 2*f_beta.value; )>>>>/MaxLen 40
->>
-endobj
-20 0 obj
-<<
-/Type /Annot
-/Rect [177.327 668.326 224.152 682.219]
-/Subtype/Widget/F 4/P 5 0 R/T(alpha)/FT/Tx/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V(0)/MaxLen 40
+/Annots [ 21 0 R ]
 >>
 endobj
 21 0 obj
 <<
 /Type /Annot
-/Rect [171.377 646.353 218.202 658.308]
-/Subtype/Widget/F 4/P 5 0 R/T(beta)/FT/Tx/Q 2/BS<</W 1 /S /S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf 0 0 0 rg)/DV()/V(0)/MaxLen 40
+/Subtype/Widget/F 4/P 5 0 R/T(text)/FT/Tx/Q 0/BS<</W 1 /S/S>>/MK<</BC[1 0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf)/DV()/V()
+/Rect [200.546 707.125 285.585 719.08]
 >>
 endobj
 24 0 obj
@@ -185,42 +219,39 @@ endobj
 >>
 endobj
 28 0 obj
-[ 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R ]
+[ 21 0 R ]
 endobj
 29 0 obj
-[ 18 0 R 19 0 R 17 0 R ]
+<< /ZaDb 7 0 R /Helv 8 0 R  >>
 endobj
 30 0 obj
-<< /ZaDb 7 0 R /Helv 8 0 R  >>
+<< /Font 29 0 R  >>
 endobj
 31 0 obj
-<< /Font 30 0 R  >>
+<< /DA (/Helv 10 Tf 0 g) /Fields 28 0 R /DR 30 0 R  >>
 endobj
 32 0 obj
-<< /DA (/Helv 10 Tf 0 g) /NeedAppearances true /Fields 28 0 R /CO 29 0 R /DR 31 0 R  >>
+[500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8]
 endobj
 33 0 obj
-[500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9]
+[638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.5 666.7 666.7 611.1 288.9 500 288.9 500 277.8 277.8 480.6 516.7 444.4 516.7 444.4 305.6 500 516.7 238.9 266.7 488.9 238.9 794.4 516.7 500 516.7 516.7 341.7 383.3 361.1 516.7]
 endobj
 34 0 obj
-[638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.5 666.7 666.7 611.1 288.9 500 288.9 500 277.8 277.8 480.6 516.7 444.4 516.7 444.4 305.6 500 516.7 238.9 266.7 488.9 238.9 794.4 516.7 500 516.7 516.7 341.7 383.3 361.1 516.7]
+[755 846 762 761 571 677 763 760 759 754 494 552 537 577 692 786 788 788 790 793 794 816 823 789 841 823 833 816 831 923 744 723 749 790 792 695 776 768 792 759 707 708 682 701 826 815 789 789 707 687 696 689 786 787 713 791 785 791 873 761 762 762 759 759 892 892 788 784 438 138 277 415 392]
 endobj
 35 0 obj
-[392]
-endobj
-36 0 obj
 <<
-/Length1 1545
-/Length2 10416
+/Length1 1483
+/Length2 9594
 /Length3 0
-/Length 11961     
+/Length 11077     
 >>
 [BINARY STREAM]
 endobj
-37 0 obj
+36 0 obj
 <<
 /Type /FontDescriptor
-/FontName /WXHPPB+CMR10
+/FontName /ESZYUH+CMR10
 /Flags 4
 /FontBBox [-40 -250 1009 750]
 /Ascent 694
@@ -229,11 +260,11 @@ endobj
 /ItalicAngle 0
 /StemV 69
 /XHeight 431
-/CharSet (/A/B/G/a/e/h/l/m/one/p/t/three/two)
-/FontFile 36 0 R
+/CharSet (/I/T/e/n/one/r/s/t/x)
+/FontFile 35 0 R
 >>
 endobj
-38 0 obj
+37 0 obj
 <<
 /Length1 1458
 /Length2 6860
@@ -242,7 +273,7 @@ endobj
 >>
 [BINARY STREAM]
 endobj
-39 0 obj
+38 0 obj
 <<
 /Type /FontDescriptor
 /FontName /XYLNGW+CMSS10
@@ -255,22 +286,22 @@ endobj
 /StemV 78
 /XHeight 444
 /CharSet (/P/S/b/i/m/t/u)
-/FontFile 38 0 R
+/FontFile 37 0 R
 >>
 endobj
-40 0 obj
+39 0 obj
 <<
-/Length1 1568
-/Length2 967
+/Length1 1600
+/Length2 1454
 /Length3 0
-/Length 2535      
+/Length 3054      
 >>
 [BINARY STREAM]
 endobj
-41 0 obj
+40 0 obj
 <<
 /Type /FontDescriptor
-/FontName /GCRMMP+Dingbats
+/FontName /YMWQUJ+Dingbats
 /Flags 4
 /FontBBox [-1 -143 981 819]
 /Ascent 708
@@ -279,41 +310,41 @@ endobj
 /ItalicAngle 0
 /StemV 0
 /XHeight 400
-/CharSet (/a97)
-/FontFile 40 0 R
+/CharSet (/a19/a23/a97)
+/FontFile 39 0 R
 >>
 endobj
 26 0 obj
 <<
 /Type /Font
 /Subtype /Type1
-/BaseFont /WXHPPB+CMR10
-/FontDescriptor 37 0 R
+/BaseFont /ESZYUH+CMR10
+/FontDescriptor 36 0 R
 /FirstChar 49
-/LastChar 116
-/Widths 33 0 R
+/LastChar 120
+/Widths 32 0 R
 >>
 endobj
-14 0 obj
+18 0 obj
 <<
 /Type /Font
 /Subtype /Type1
 /BaseFont /XYLNGW+CMSS10
-/FontDescriptor 39 0 R
+/FontDescriptor 38 0 R
 /FirstChar 80
 /LastChar 117
-/Widths 34 0 R
+/Widths 33 0 R
 >>
 endobj
 11 0 obj
 <<
 /Type /Font
 /Subtype /Type1
-/BaseFont /GCRMMP+Dingbats
-/FontDescriptor 41 0 R
-/FirstChar 123
+/BaseFont /YMWQUJ+Dingbats
+/FontDescriptor 40 0 R
+/FirstChar 51
 /LastChar 123
-/Widths 35 0 R
+/Widths 34 0 R
 >>
 endobj
 27 0 obj
@@ -323,84 +354,85 @@ endobj
 /Kids [5 0 R]
 >>
 endobj
-42 0 obj
+41 0 obj
 <<
 /Names [(Doc-Start) 25 0 R (page.1) 24 0 R]
 /Limits [(Doc-Start) (page.1)]
 >>
 endobj
-43 0 obj
+42 0 obj
 <<
-/Dests 42 0 R
+/Dests 41 0 R
 >>
 endobj
-44 0 obj
+43 0 obj
 <<
 /Type /Catalog
 /Pages 27 0 R
-/Names 43 0 R
-/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/AcroForm 32 0 R
+/Names 42 0 R
+/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/AcroForm 31 0 R
 >>
 endobj
-45 0 obj
+44 0 obj
 <<
-/Producer (pdfTeX)/Author ()/Title ()/Subject ()/Creator (LaTeX with hyperref)/CreationDate ()/ModDate ()/Keywords ()
+/Producer (pdfTeX-1.40.20)
+/Author ()/Title ()/Subject ()/Creator (LaTeX with hyperref)/CreationDate ()/ModDate ()/Keywords ()
 /Trapped /False
+/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/W32TeX) kpathsea version 6.3.1)
 >>
 endobj
 xref
-0 46
+0 45
 0000000001 65535 f 
 0000000002 00000 f 
 0000000003 00000 f 
 0000000004 00000 f 
 0000000000 00000 f 
-0000003025 00000 n 
+0000003787 00000 n 
 0000000015 00000 n 
 0000001199 00000 n 
 0000001277 00000 n 
 0000001367 00000 n 
 0000001591 00000 n 
-0000030006 00000 n 
+0000029142 00000 n 
 0000001661 00000 n 
-0000002153 00000 n 
-0000029865 00000 n 
-0000002223 00000 n 
-0000002716 00000 n 
-0000003186 00000 n 
-0000003605 00000 n 
-0000004023 00000 n 
-0000004390 00000 n 
-0000004601 00000 n 
-0000004928 00000 n 
-0000002786 00000 n 
-0000004811 00000 n 
-0000004869 00000 n 
-0000029725 00000 n 
-0000030150 00000 n 
-0000004997 00000 n 
-0000005052 00000 n 
-0000005093 00000 n 
-0000005140 00000 n 
-0000005176 00000 n 
-0000005280 00000 n 
-0000005663 00000 n 
-0000005901 00000 n 
-0000005923 00000 n 
-0000017983 00000 n 
-0000018232 00000 n 
-0000026648 00000 n 
-0000026877 00000 n 
-0000029509 00000 n 
-0000030208 00000 n 
-0000030305 00000 n 
-0000030341 00000 n 
-0000030469 00000 n 
+0000001886 00000 n 
+0000001956 00000 n 
+0000002440 00000 n 
+0000002510 00000 n 
+0000003002 00000 n 
+0000029001 00000 n 
+0000003072 00000 n 
+0000003565 00000 n 
+0000003920 00000 n 
+0000004225 00000 n 
+0000003635 00000 n 
+0000004108 00000 n 
+0000004166 00000 n 
+0000028861 00000 n 
+0000029285 00000 n 
+0000004294 00000 n 
+0000004321 00000 n 
+0000004368 00000 n 
+0000004404 00000 n 
+0000004475 00000 n 
+0000004882 00000 n 
+0000005120 00000 n 
+0000005430 00000 n 
+0000016605 00000 n 
+0000016840 00000 n 
+0000025256 00000 n 
+0000025485 00000 n 
+0000028637 00000 n 
+0000029343 00000 n 
+0000029440 00000 n 
+0000029476 00000 n 
+0000029604 00000 n 
 trailer
-<< /Size 46
-/Root 44 0 R
-/Info 45 0 R
- >>
+<< /Size 45
+/Root 43 0 R
+/Info 44 0 R
+/ID [<E1D06800A316988DF3FA71AB101C54BE> <E1D06800A316988DF3FA71AB101C54BE>] >>
 startxref
-30625
+29881
 %%EOF
diff --git a/testfiles/formtextfields.xetex.tpf b/testfiles/formtextfields.xetex.tpf
new file mode 100644
index 0000000..2b24a14
--- /dev/null
+++ b/testfiles/formtextfields.xetex.tpf
@@ -0,0 +1,318 @@
+%PDF-1.5
+%äðíø
+18 0 obj
+<</Font<</F1 17 0 R>>/ExtGState 4 0 R/Pattern 6 0 R/Shading 7 0 R/ColorSpace 5 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+16 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[76.712 -62.765 80.618 -55.711]/Matrix[1
+0 0 1 -76.712 62.765]/Resources 18 0 R/Length 53>>
+stream
+ 0 G 0 g BT /F1 9.9626 Tf 76.712 -62.765 Td[({)]TJ ET
+endstream
+endobj
+20 0 obj
+<</Font<</F1 17 0 R>>/ExtGState 4 0 R/Pattern 6 0 R/Shading 7 0 R/ColorSpace 5 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+19 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[76.712 -62.894 84.234 -55.711]/Matrix[1
+0 0 1 -76.712 62.765]/Resources 20 0 R/Length 53>>
+stream
+ 0 G 0 g BT /F1 9.9626 Tf 76.712 -62.765 Td[(3)]TJ ET
+endstream
+endobj
+22 0 obj
+<</Font<</F1 17 0 R>>/ExtGState 4 0 R/Pattern 6 0 R/Shading 7 0 R/ColorSpace 5 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+21 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[76.712 -66.829 89.176 -52.802]/Matrix[1
+0 0 1 -76.712 62.765]/Resources 22 0 R/Length 241>>
+stream
+ 0 G 0 g q .3985 w 76.712 -53.001 m 89.176 -53.001 l S Q q .3985 w 76.912 -66.431 m 76.912 -53.201 l S Q BT /F1 9.9626 Tf 80.1 -62.765 Td[(7)]TJ ET q .3985 w 88.976 -66.431 m 88.976 -53.201 l S Q q .3985 w 76.712 -66.63 m 89.176 -66.63 l S Q
+endstream
+endobj
+26 0 obj
+<</Font<</F2 25 0 R>>/ExtGState 4 0 R/Pattern 6 0 R/Shading 7 0 R/ColorSpace 5 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+23 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[76.712 -66.371 113.215 -52.244]/Matrix[1
+0 0 1 -76.712 62.765]/Resources 26 0 R/Length 270>>
+stream
+ 0 G 0 g q .3985 w 76.712 -52.443 m 113.215 -52.443 l S Q q .3985 w 76.912 -65.973 m 76.912 -52.643 l S Q BT /F2 9.9626 Tf 80.1 -62.765 Td[<0061006d0023004b00420069>]TJ ET q .3985 w 113.016 -65.973 m 113.016 -52.643 l S Q q .3985 w 76.712 -66.172 m 113.215 -66.172 l S Q
+endstream
+endobj
+28 0 obj
+<</Font<</F2 25 0 R>>/ExtGState 4 0 R/Pattern 6 0 R/Shading 7 0 R/ColorSpace 5 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+27 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[76.712 -66.371 119.582 -52.244]/Matrix[1
+0 0 1 -76.712 62.765]/Resources 28 0 R/Length 274>>
+stream
+ 0 G 0 g q .3985 w 76.712 -52.443 m 119.582 -52.443 l S Q q .3985 w 76.912 -65.973 m 76.912 -52.643 l S Q BT /F2 9.9626 Tf 80.1 -62.765 Td[<0061006d0023004b004200690053>]TJ ET q .3985 w 119.382 -65.973 m 119.382 -52.643 l S Q q .3985 w 76.712 -66.172 m 119.582 -66.172 l S Q
+endstream
+endobj
+31 0 obj
+<</Length 169>>
+stream
+ q 1 0 0 1 72 769.89 cm BT /F3 9.9626 Tf 76.712 -74.72 Td[<0041004d0062003200600069>-333<0068>82<003200740069>]TJ ET BT /F3 9.9626 Tf 231.133 -630.635 Td[<0052>]TJ ET Q
+endstream
+endobj
+32 0 obj
+<</ExtGState 4 0 R/ColorSpace 5 0 R/Pattern 6 0 R/Shading 7 0 R/Font<</F3 30 0 R>>/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+4 0 obj
+<<>>
+endobj
+5 0 obj
+<<>>
+endobj
+6 0 obj
+<<>>
+endobj
+7 0 obj
+<<>>
+endobj
+15 0 obj
+<</Type/Encoding/Differences[24/breve/caron/circumflex/dotaccent/hungarumlaut/ogonek/ring/tilde
+39/quotesingle 96/grave 128/bullet/dagger/daggerdbl/ellipsis/emdash/endash/florin/fraction/guilsinglleft/guilsinglright/minus/perthousand/quotedblbase/quotedblleft/quotedblright/quoteleft/quoteright/quotesinglbase/trademark/fi/fl/Lslash/OE/Scaron/Ydieresis/Zcaron/dotlessi/lslash/oe/scaron/zcaron
+164/currency 166/brokenbar 168/dieresis/copyright/ordfeminine 172/logicalnot/.notdef/registered/macron/degree/plusminus/twosuperior/threesuperior/acute/mu
+183/periodcentered/cedilla/onesuperior/ordmasculine 188/onequarter/onehalf/threequarters
+192/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]>>
+endobj
+9 0 obj
+<</Type/Font/Subtype/Type1/Name/ZaDb/BaseFont/ZapfDingbats>>
+endobj
+10 0 obj
+<</Type/Font/Subtype/Type1/Name/Helv/BaseFont/Helvetica/Encoding 15 0 R>>
+endobj
+8 0 obj
+<</Type/Annot/Subtype/Widget/F 4/P 3 0 R/T(text)/FT/Tx/Q 0/BS<</W 1/S/S>>/MK<</BC[1
+0 0]/BG[1 1 1]>>/DA(/Helv 10 Tf)/DV()/V()/Rect[200.538 695.17 285.577 707.125]>>
+endobj
+12 0 obj
+[8 0 R]
+endobj
+11 0 obj
+<</ZaDb 9 0 R/Helv 10 0 R>>
+endobj
+13 0 obj
+<</Font 11 0 R>>
+endobj
+14 0 obj
+<</DA(/Helv 10 Tf 0 g)/Fields 12 0 R/DR 13 0 R>>
+endobj
+35 0 obj
+<</Names[(Doc-Start)33 0 R(page.1)34 0 R]>>
+endobj
+33 0 obj
+[3 0 R/XYZ 133.77 717.09 null]
+endobj
+34 0 obj
+[3 0 R/XYZ 132.77 754.95 null]
+endobj
+36 0 obj
+<</Dests 35 0 R>>
+endobj
+38 0 obj
+[8 0 R]
+endobj
+3 0 obj
+<</Resources 32 0 R/Type/Page/Parent 37 0 R/Contents[31 0 R]/Annots 38 0 R>>
+endobj
+37 0 obj
+<</Type/Pages/Count 1/Kids[3 0 R]/MediaBox[0 0 595.28 841.89]>>
+endobj
+2 0 obj
+<</Creator(LaTeX with hyperref)/Producer(xdvipdfmx \(20190503\))/CreationDate(D:20160520090000-00'00')>>
+endobj
+1 0 obj
+<</PageMode/UseOutlines/OpenAction[3 0 R/Fit]/AcroForm 14 0 R/Names 36 0 R/Pages
+37 0 R/Type/Catalog>>
+endobj
+39 0 obj
+[755 0 0 0 571 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 392]
+endobj
+40 0 obj
+<</Subtype/Type1C/Length 1077>>
+[BINARY STREAM]
+endobj
+17 0 obj
+<</Type/Font/Subtype/Type1/Widths 39 0 R/FirstChar 51/LastChar 123/BaseFont/JRSQDI+Dingbats/FontDescriptor
+41 0 R>>
+endobj
+41 0 obj
+<</Type/FontDescriptor/CapHeight 0/Ascent 0/Descent 0/ItalicAngle 0/StemV 0/Flags
+6/FontBBox[-1 -143 981 819]/FontFile3 40 0 R/CharSet(/a19/a23/a97)/FontName/JRSQDI+Dingbats>>
+endobj
+42 0 obj
+<</Length 439>>
+stream
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CMapName /APWWDF+LMSans10-Regular-UTF16 def
+/CMapType 2 def
+/CIDSystemInfo <<
+  /Registry (Adobe)
+  /Ordering (UCS)
+  /Supplement 0
+>> def
+1 begincodespacerange
+<0000> <FFFF>
+endcodespacerange
+7 beginbfchar
+<0023> <0062>
+<0042> <0069>
+<004B> <006D>
+<0053> <0050>
+<0061> <0053>
+<0069> <0074>
+<006D> <0075>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+endstream
+endobj
+43 0 obj
+<</Length 468>>
+stream
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CMapName /YPRAXL+LMRoman10-Regular-UTF16 def
+/CMapType 2 def
+/CIDSystemInfo <<
+  /Registry (Adobe)
+  /Ordering (UCS)
+  /Supplement 0
+>> def
+1 begincodespacerange
+<0000> <FFFF>
+endcodespacerange
+9 beginbfchar
+<0032> <0065>
+<0041> <0049>
+<004D> <006E>
+<0052> <0031>
+<0060> <0072>
+<0062> <0073>
+<0068> <0054>
+<0069> <0074>
+<0074> <0078>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+endstream
+endobj
+45 0 obj
+<</Subtype/CIDFontType0C/Length 1027>>
+[BINARY STREAM]
+endobj
+46 0 obj
+[35[517]66[239]75[794]83[639]97[556]105[361]109[517]]
+endobj
+47 0 obj
+<</Length 14>>
+[BINARY STREAM]
+endobj
+24 0 obj
+<</Type/Font/Subtype/CIDFontType0/BaseFont/APWWDF+LMSans10-Regular/CIDSystemInfo<</Registry(Adobe)/Ordering(Identity)/Supplement
+0>>/FontDescriptor 44 0 R/DW 280/W 46 0 R>>
+endobj
+44 0 obj
+<</Type/FontDescriptor/Ascent 806/Descent -194/StemV 78/CapHeight 806/AvgWidth 520/FontBBox[-420
+-309 1431 1154]/ItalicAngle 0/Flags 6/Style<</Panose<000000000500000000000000>>>/FontName/APWWDF+LMSans10-Regular/FontFile3
+45 0 R/CIDSet 47 0 R>>
+endobj
+49 0 obj
+<</Subtype/CIDFontType0C/Length 1543>>
+[BINARY STREAM]
+endobj
+50 0 obj
+[50[444]65[361]77[556]82[500]96[392]98[394]104[722 389]116[528]]
+endobj
+51 0 obj
+<</Length 15>>
+[BINARY STREAM]
+endobj
+29 0 obj
+<</Type/Font/Subtype/CIDFontType0/BaseFont/YPRAXL+LMRoman10-Regular/CIDSystemInfo<</Registry(Adobe)/Ordering(Identity)/Supplement
+0>>/FontDescriptor 48 0 R/DW 280/W 50 0 R>>
+endobj
+48 0 obj
+<</Type/FontDescriptor/Ascent 806/Descent -194/StemV 69/CapHeight 806/AvgWidth 549/FontBBox[-430
+-290 1417 1127]/ItalicAngle 0/Flags 6/Style<</Panose<000000000500000000000000>>>/FontName/YPRAXL+LMRoman10-Regular/FontFile3
+49 0 R/CIDSet 51 0 R>>
+endobj
+25 0 obj
+<</Type/Font/Subtype/Type0/BaseFont/APWWDF+LMSans10-Regular-Identity-H/Encoding/Identity-H/DescendantFonts[24 0 R]/ToUnicode
+42 0 R>>
+endobj
+30 0 obj
+<</Type/Font/Subtype/Type0/BaseFont/YPRAXL+LMRoman10-Regular-Identity-H/Encoding/Identity-H/DescendantFonts[29 0 R]/ToUnicode
+43 0 R>>
+endobj
+xref
+0 52
+0000000000 65535 f 
+0000005105 00000 n 
+0000004985 00000 n 
+0000004813 00000 n 
+0000002826 00000 n 
+0000002846 00000 n 
+0000002866 00000 n 
+0000002886 00000 n 
+0000004255 00000 n 
+0000004089 00000 n 
+0000004165 00000 n 
+0000004459 00000 n 
+0000004435 00000 n 
+0000004503 00000 n 
+0000004536 00000 n 
+0000002906 00000 n 
+0000000156 00000 n 
+0000006536 00000 n 
+0000000015 00000 n 
+0000000520 00000 n 
+0000000379 00000 n 
+0000000884 00000 n 
+0000000743 00000 n 
+0000001437 00000 n 
+0000009100 00000 n 
+0000011761 00000 n 
+0000001296 00000 n 
+0000002020 00000 n 
+0000001879 00000 n 
+0000011310 00000 n 
+0000011911 00000 n 
+0000002466 00000 n 
+0000002685 00000 n 
+0000004661 00000 n 
+0000004708 00000 n 
+0000004601 00000 n 
+0000004755 00000 n 
+0000004905 00000 n 
+0000004789 00000 n 
+0000005223 00000 n 
+0000005393 00000 n 
+0000006668 00000 n 
+0000006860 00000 n 
+0000007349 00000 n 
+0000009289 00000 n 
+0000007867 00000 n 
+0000008967 00000 n 
+0000009037 00000 n 
+0000011500 00000 n 
+0000009549 00000 n 
+0000011165 00000 n 
+0000011246 00000 n 
+trailer
+<</Root 1 0 R/Info 2 0 R/ID[<b5133e819e6c02c3d9714f1b175a7b96><b5133e819e6c02c3d9714f1b175a7b96>]/Size
+52>>
+startxref
+12062
+%%EOF





More information about the latex3-commits mailing list