[latex3-commits] [git/LaTeX3-latex3-pdfresources] develop, main: add xform support to dvips (4f6b671)

Ulrike Fischer fischer at troubleshooting-tex.de
Wed Jul 21 17:07:01 CEST 2021


Repository : https://github.com/latex3/pdfresources
On branches: develop,main
Link       : https://github.com/latex3/pdfresources/commit/4f6b67172fb08249eea1d3c87e03971c11f2fcc0

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

commit 4f6b67172fb08249eea1d3c87e03971c11f2fcc0
Author: Ulrike Fischer <fischer at troubleshooting-tex.de>
Date:   Wed Jul 21 17:07:01 2021 +0200

    add xform support to dvips


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

4f6b67172fb08249eea1d3c87e03971c11f2fcc0
 CHANGELOG.md                                       |   0
 experiments/xform-dvips/xformtest-landscape.tex    |  76 ++++
 experiments/xform-dvips/xformtest.tex              |  73 +++
 l3backend-testphase.dtx                            |  74 ++--
 l3pdfxform.dtx                                     |   6 +-
 testfiles-dvips/xform-appearance.tpf               | Bin 8891 -> 8897 bytes
 {testfiles => testfiles-dvips}/xform-preamble.pvt  |   0
 testfiles-dvips/xform-preamble.tpf                 | Bin 0 -> 4808 bytes
 {testfiles => testfiles-dvips}/xform.pvt           |   0
 testfiles-dvips/xform.tpf                          | Bin 0 -> 6508 bytes
 testfiles/xform-appearance.luatex.tpf              | 402 +++++++++++++++++
 .../xform-appearance.pvt                           |   0
 .../{tag-checkbox.tpf => xform-appearance.tpf}     | 491 +++++++++++++++------
 testfiles/xform-appearance.xetex.tpf               | 282 ++++++++++++
 14 files changed, 1213 insertions(+), 191 deletions(-)

diff --git a/experiments/xform-dvips/xformtest-landscape.tex b/experiments/xform-dvips/xformtest-landscape.tex
new file mode 100644
index 0000000..ab7b2cf
--- /dev/null
+++ b/experiments/xform-dvips/xformtest-landscape.tex
@@ -0,0 +1,76 @@
+\RequirePackage{pdfmanagement-testphase}
+\DeclareDocumentMetadata{backend=dvips,uncompress,pdfversion=2.0}
+
+\documentclass[dvips]{article}
+\usepackage[landscape]{geometry}
+% or
+%\documentclass[dvips,landscape]{article}
+
+\usepackage{l3pdffield-testphase,bearwear}
+\usepackage{attachfile2}
+\usepackage{pdfbase}
+
+\begin{document}\parindent=0pt
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% l3backend-testphase-dvips
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\verb+l3backend-testphase-dvips.def+ (new):\\[2ex]
+\ExplSyntaxOn
+\pdfxform_new:nnn {test}{}{\mbox{qXFORMp}} % text with decenders
+some~text~with~decenders$\rightarrow$\pdfxform_use:n{test}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\pdfxform_use:n{test}
+\par
+\pdffield_appearance:nn {pdffield/bear}
+  {
+    \tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];
+  }
+\group_begin:
+Push button:\pdfannot_dict_put:nnn {widget}{A}{<</S/Named /N/LastPage>>}
+\sffamily\bfseries\pdffield_pushbutton:n
+  {name=my/go,width=4cm,height=5cm,appearance=pdffield/bear,caption=GO~TO~LAST~PAGE,rollover-caption=click~me!}
+\group_end:
+
+\newpage
+%%%%%%%%%%%%%%
+% attachfile2
+%%%%%%%%%%%%%%
+\verb+attachfile2.sty+:\\[2ex]
+\makeatletter
+\atfi at set@appearance{qXFORMp}
+some~text~with~decenders$\rightarrow$\atfi at refxform{\atfi at appearanceobj}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\atfi at refxform{\atfi at appearanceobj}
+\par
+\atfi at set@appearance{\tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];}
+Push button:\pbs_pdfannot:nnnn{4cm}{5cm}{0pt}{
+  /Subtype/Widget /F~0 /FT/Btn /Ff~65536 /T (my/go3)
+  /A << /S/Named /N/LastPage >>
+  /MK << /CA (GO~TO~LAST~PAGE) /RC (click~me!) >>
+  /AP~<</N~\atfi at appearanceobj>>
+}\phantom{\rule{4cm}{5cm}}
+\pbs_appendtofields:n{\pbs_pdflastann:}
+\makeatother
+
+\newpage
+%%%%%%%%%%
+% pdfbase
+%%%%%%%%%%
+\verb+pdfbase.sty+:\\[2ex]
+\sbox{0}{qXFORMp}
+\pbs_pdfxform:nnnnn{}{0}{}{}{0}
+some~text~with~decenders$\rightarrow$\pbs_pdfrefxform:n{\pbs_pdflastxform:}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\pbs_pdfrefxform:n{\pbs_pdflastxform:}
+\par
+\sbox{0}{\tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];}
+\pbs_pdfxform:nnnnn{}{1}{}{}{0}
+Push button:\pbs_pdfannot:nnnn{4cm}{5cm}{0pt}{
+  /Subtype/Widget /F~0 /FT/Btn /Ff~65536 /T (my/go2)
+  /A << /S/Named /N/LastPage >>
+  /MK << /CA (GO~TO~LAST~PAGE) /RC (click~me!) >>
+  /AP~<</N~\pbs_pdflastxform:>>
+}\phantom{\rule{4cm}{5cm}}
+\pbs_appendtofields:n{\pbs_pdflastann:}
+\ExplSyntaxOff
+\newpage
+\Huge The End.
+\end{document}
+
diff --git a/experiments/xform-dvips/xformtest.tex b/experiments/xform-dvips/xformtest.tex
new file mode 100644
index 0000000..c41e8c0
--- /dev/null
+++ b/experiments/xform-dvips/xformtest.tex
@@ -0,0 +1,73 @@
+\RequirePackage{pdfmanagement-testphase}
+\DeclareDocumentMetadata{backend=dvips,uncompress,pdfversion=2.0}
+
+\documentclass[dvips]{article}
+
+\usepackage{l3pdffield-testphase,bearwear}
+\usepackage{attachfile2}
+\usepackage{pdfbase}
+
+\begin{document}\parindent=0pt
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% l3backend-testphase-dvips
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\verb+l3backend-testphase-dvips.def+ (new):\\[2ex]
+\ExplSyntaxOn
+\pdfxform_new:nnn {test}{}{\mbox{qXFORMp}} % text with decenders
+some~text~with~decenders$\rightarrow$\pdfxform_use:n{test}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\pdfxform_use:n{test}
+\par
+\pdffield_appearance:nn {pdffield/bear}
+  {
+    \tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];
+  }
+\group_begin:
+Push button:\pdfannot_dict_put:nnn {widget}{A}{<</S/Named /N/LastPage>>}
+\sffamily\bfseries\pdffield_pushbutton:n
+  {name=my/go,width=4cm,height=5cm,appearance=pdffield/bear,caption=GO~TO~LAST~PAGE,rollover-caption=click~me!}
+\group_end:
+
+\newpage
+%%%%%%%%%%%%%%
+% attachfile2
+%%%%%%%%%%%%%%
+\verb+attachfile2.sty+:\\[2ex]
+\makeatletter
+\atfi at set@appearance{qXFORMp}
+some~text~with~decenders$\rightarrow$\atfi at refxform{\atfi at appearanceobj}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\atfi at refxform{\atfi at appearanceobj}
+\par
+\atfi at set@appearance{\tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];}
+Push button:\pbs_pdfannot:nnnn{4cm}{5cm}{0pt}{
+  /Subtype/Widget /F~0 /FT/Btn /Ff~65536 /T (my/go3)
+  /A << /S/Named /N/LastPage >>
+  /MK << /CA (GO~TO~LAST~PAGE) /RC (click~me!) >>
+  /AP~<</N~\atfi at appearanceobj>>
+}\phantom{\rule{4cm}{5cm}}
+\pbs_appendtofields:n{\pbs_pdflastann:}
+\makeatother
+
+\newpage
+%%%%%%%%%%
+% pdfbase
+%%%%%%%%%%
+\verb+pdfbase.sty+:\\[2ex]
+\sbox{0}{qXFORMp}
+\pbs_pdfxform:nnnnn{}{0}{}{}{0}
+some~text~with~decenders$\rightarrow$\pbs_pdfrefxform:n{\pbs_pdflastxform:}
+\quad\quad\quad\quad\quad\quad again$\rightarrow$\pbs_pdfrefxform:n{\pbs_pdflastxform:}
+\par
+\sbox{0}{\tikz\bear\bearwear[shirt=red,body~deco={\node[font=\tiny\bfseries,white]~at~(beartummy){Push};}];}
+\pbs_pdfxform:nnnnn{}{1}{}{}{0}
+Push button:\pbs_pdfannot:nnnn{4cm}{5cm}{0pt}{
+  /Subtype/Widget /F~0 /FT/Btn /Ff~65536 /T (my/go2)
+  /A << /S/Named /N/LastPage >>
+  /MK << /CA (GO~TO~LAST~PAGE) /RC (click~me!) >>
+  /AP~<</N~\pbs_pdflastxform:>>
+}\phantom{\rule{4cm}{5cm}}
+\pbs_appendtofields:n{\pbs_pdflastann:}
+\ExplSyntaxOff
+\newpage
+\Huge The End.
+\end{document}
+
diff --git a/l3backend-testphase.dtx b/l3backend-testphase.dtx
index 27e96e3..145161c 100644
--- a/l3backend-testphase.dtx
+++ b/l3backend-testphase.dtx
@@ -1484,9 +1484,9 @@
 %</dvisvgm>
 %    \end{macrocode}
 % The xform code for dvips is based on code from the attachfile2 package
-% (in atfi-dvips), along with some ideas from pdfbase.
-% It is not finished. Using xform as appearance seems to work, but using the
-% xform in the document not. Also details like clipping and landscape is untested.
+% (in atfi-dvips), along with some ideas from pdfbase and has been corrected
+% with the help of Alexander Grahn.
+% Details like clipping and landscape will probably be corrected in the future.
 %    \begin{macrocode}
 %<*dvips>
 \cs_new_protected:Npn\@@_backend_xform_new:nnnn #1 #2 #3 #4 % #1 name, #2 attribute, #4  content
@@ -1512,33 +1512,31 @@
     \tl_const:cx
       { c_@@_backend_xform_dp_ \tl_to_str:n {#1} _tl }
       { \tex_the:D \box_dp:N \l_@@_backend_tmpa_box }
+    %mirror the box
+    \box_scale:Nnn \l_@@_backend_tmpa_box {1} {-1}
     \hbox_set:Nn\l_@@_backend_tmpb_box
       {
         \__kernel_backend_postscript:x
           {
+            gsave~currentpoint~translate~
             mark~
             /_objdef~{ pdf.obj \int_use:N\g_@@_backend_object_int }\c_space_tl~
             /BBox[
-            currentpoint~\dim_to_decimal:n{\box_dp:N \l_@@_backend_tmpa_box}~sub~
+            currentpoint~\dim_to_decimal:n{\box_dp:N \l_@@_backend_tmpa_box}~72.27~div~VResolution~mul~add~
             currentpoint~
-              exch~\dim_to_decimal:n{\box_wd:N \l_@@_backend_tmpa_box}~ add~
-              exch~\dim_to_decimal:n{\box_ht:N \l_@@_backend_tmpa_box}~ add~
+              exch~\dim_to_decimal:n{\box_wd:N \l_@@_backend_tmpa_box}~72.27~div~Resolution~mul~add~
+              exch~\dim_to_decimal:n{\box_ht:N \l_@@_backend_tmpa_box}~72.27~div~VResolution~mul~sub~
              ]
              \str_if_eq:eeF{#1}{}
               {
                 product~(Distiller)~search~{pop~pop~pop~#2}{pop}ifelse~
               }
-             /BP~pdfmark~
-             gsave~
-            currentpoint~
-            2~copy~translate~
-            72.27~Resolution~div~72.27~VResolution~div~neg~scale~
-            exch~neg~exch~neg~translate
+             /BP~pdfmark~grestore~
           }
         \box_use_drop:N\l_@@_backend_tmpa_box
         \__kernel_backend_postscript:n
           {
-            grestore ~ mark ~ /EP~pdfmark
+            mark ~ /EP~pdfmark
           }
        \str_if_eq:eeF{#1}{}
          {
@@ -1557,38 +1555,30 @@
     \box_set_dp:Nn \l_@@_backend_tmpb_box { \c_zero_dim }
     \box_set_ht:Nn \l_@@_backend_tmpb_box { \c_zero_dim }
     \box_set_wd:Nn \l_@@_backend_tmpb_box { \c_zero_dim }
-    \mode_leave_vertical: 
-    \box_use:N\l_@@_backend_tmpb_box
+    \hook_gput_code:nnn {begindocument/end}{pdfxform}
+      {
+       \mode_leave_vertical:
+       \box_use:N\l_@@_backend_tmpb_box
+      }
   }
 
-\cs_new_protected:Nn\__pdf_backend_xform_use:n
-   {
-     \__kernel_backend_postscript:x
-       {
-          gsave~currentpoint~translate~
-          Resolution~72~div~VResolution~neg~72~div~scale~
-          mark~{ pdf.obj \int_use:c{c__pdf_backend_xform_ \tl_to_str:n {#1} _int }}~
-          /SP~pdfmark ~ grestore
-       }
-   }
-%\cs_new_protected:Npn \@@_backend_xform_use:n #1
-%     {
-%       \hbox_set:Nn \l_@@_backend_tmpa_box
-%         {
-%           \__kernel_backend_postscript:x
-%            {
-%              gsave~currentpoint~translate~
-%              Resolution~72~div~VResolution~neg~72~div~scale~
-%              mark~{ pdf.obj \int_use:c{c_@@_backend_xform_ \tl_to_str:n {#1} _int }}~
-%              /SP~pdfmark ~ grestore
-%            }
-%         }
-%       \box_set_wd:Nn  \l_@@_backend_tmpa_box { \pdfxform_wd:n { #1 } }
-%       \box_set_ht:Nn  \l_@@_backend_tmpa_box { \pdfxform_ht:n { #1 } }
-%       \box_set_dp:Nn  \l_@@_backend_tmpa_box { \pdfxform_dp:n { #1 } }
-%       \box_use_drop:N \l_@@_backend_tmpa_box
-%     }
 
+\cs_new_protected:Npn \@@_backend_xform_use:n #1
+  {
+    \hbox_set:Nn \l_@@_backend_tmpa_box
+      {
+        \__kernel_backend_postscript:x
+         {
+           gsave~currentpoint~translate~1~-1~scale~
+           mark~{ pdf.obj \int_use:c{c__pdf_backend_xform_ \tl_to_str:n {#1} _int }}~
+          /SP~pdfmark ~ grestore
+         }
+      }
+    \box_set_wd:Nn  \l_@@_backend_tmpa_box { \pdfxform_wd:n { #1 } }
+    \box_set_ht:Nn  \l_@@_backend_tmpa_box { \pdfxform_ht:n { #1 } }
+    \box_set_dp:Nn  \l_@@_backend_tmpa_box { \pdfxform_dp:n { #1 } }
+    \box_use_drop:N \l_@@_backend_tmpa_box
+  }
 \cs_new:Npn \@@_backend_xform_ref:n #1
   {
     { pdf.obj \int_use:c{c_@@_backend_xform_ \tl_to_str:n {#1} _int} }
diff --git a/l3pdfxform.dtx b/l3pdfxform.dtx
index a715f2c..7efab1f 100644
--- a/l3pdfxform.dtx
+++ b/l3pdfxform.dtx
@@ -62,9 +62,9 @@
 % for which pdf\TeX{} introduced the short name \enquote{xforms}.
 %
 % The status is still beta.
-% The dvips route is supported only partially: using them in appearances
-% (see e.g. \pkg{l3pdffield-checkbox} seems to work, but using them in a document
-% directly not. The creation of a form involves typesetting and so can affect spacing.
+% The dvips route is now better supported but there are open issus
+% if landscape pages are involved or if the objects are larger than the page.
+% With dvips the creation of a form involves typesetting and so can affect spacing.
 %
 % Probably some of the function will also need to be enhanced by hooks.
 %
diff --git a/testfiles-dvips/xform-appearance.tpf b/testfiles-dvips/xform-appearance.tpf
index 32c9f00..ae75045 100644
Binary files a/testfiles-dvips/xform-appearance.tpf and b/testfiles-dvips/xform-appearance.tpf differ
diff --git a/testfiles/xform-preamble.pvt b/testfiles-dvips/xform-preamble.pvt
similarity index 100%
copy from testfiles/xform-preamble.pvt
copy to testfiles-dvips/xform-preamble.pvt
diff --git a/testfiles-dvips/xform-preamble.tpf b/testfiles-dvips/xform-preamble.tpf
new file mode 100644
index 0000000..111267b
Binary files /dev/null and b/testfiles-dvips/xform-preamble.tpf differ
diff --git a/testfiles/xform.pvt b/testfiles-dvips/xform.pvt
similarity index 100%
copy from testfiles/xform.pvt
copy to testfiles-dvips/xform.pvt
diff --git a/testfiles-dvips/xform.tpf b/testfiles-dvips/xform.tpf
new file mode 100644
index 0000000..0148c63
Binary files /dev/null and b/testfiles-dvips/xform.tpf differ
diff --git a/testfiles/xform-appearance.luatex.tpf b/testfiles/xform-appearance.luatex.tpf
new file mode 100644
index 0000000..1bc8a4d
--- /dev/null
+++ b/testfiles/xform-appearance.luatex.tpf
@@ -0,0 +1,402 @@
+%PDF-1.5
+%ÌÕÁÔÅØÐÄÆ
+5 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 11.955 12.752 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 6 0 R /Length 310 >>        
+stream
+q
+1 0 0 1 0 12.553 cm
+[] 0 d 0 J 0.398 w 0 0 m 11.955 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 11.955 l S
+Q
+BT
+/F23 9.96264 Tf
+1 0 0 1 2.102 3.985 Tm [<0193>]TJ
+ET
+q
+1 0 0 1 11.756 0.398 cm
+[] 0 d 0 J 0.398 w 0 0 m 0 11.955 l S
+Q
+q
+1 0 0 1 0 0.199 cm
+[] 0 d 0 J 0.398 w 0 0 m 11.955 0 l S
+Q
+endstream
+endobj
+6 0 obj
+<< /ExtGState 1 0 R /Font << /F23 7 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+8 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 11.955 12.752 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 9 0 R /Length 254 >>        
+stream
+q
+1 0 0 1 0 12.553 cm
+[] 0 d 0 J 0.398 w 0 0 m 11.955 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 11.955 l S
+Q
+q
+1 0 0 1 11.756 0.398 cm
+[] 0 d 0 J 0.398 w 0 0 m 0 11.955 l S
+Q
+q
+1 0 0 1 0 0.199 cm
+[] 0 d 0 J 0.398 w 0 0 m 11.955 0 l S
+Q
+endstream
+endobj
+9 0 obj
+<< /ExtGState 1 0 R /ProcSet [ /PDF ] >>
+endobj
+10 0 obj
+<< /Yes 5 0 R/Off 8 0 R >>
+endobj
+11 0 obj
+<< /T (a) /V /Yes /DV /Yes /FT /Btn /Kids 12 0 R /Ff 0  >>
+endobj
+13 0 obj
+<< /N 10 0 R  >>
+endobj
+16 0 obj
+<< /T (A) /FT /Btn /Opt 15 0 R /V /0 /DV /0 /Kids 17 0 R /Ff 32768  >>
+endobj
+18 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 12.354 12.354 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 19 0 R /Length 488 >>        
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.39102 0 m
+2.39102 1.32053 1.32053 2.39102 0 2.39102 c
+-1.32053 2.39102 -2.39102 1.32053 -2.39102 0 c
+-2.39102 -1.32053 -1.32053 -2.39102 0 -2.39102 c
+1.32053 -2.39102 2.39102 -1.32053 2.39102 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
+endobj
+19 0 obj
+<< /ExtGState 1 0 R /ProcSet [ /PDF ] >>
+endobj
+20 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 12.354 12.354 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 21 0 R /Length 280 >>        
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+Q
+0 g 0 G
+endstream
+endobj
+21 0 obj
+<< /ExtGState 1 0 R /ProcSet [ /PDF ] >>
+endobj
+22 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 12.354 12.354 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 23 0 R /Length 488 >>        
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.98878 0 m
+2.98878 1.65067 1.65067 2.98878 0 2.98878 c
+-1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c
+-2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c
+1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
+endobj
+23 0 obj
+<< /ExtGState 1 0 R /ProcSet [ /PDF ] >>
+endobj
+24 0 obj
+<< /Type /XObject /Subtype /Form /FormType 1 /BBox [ 0 0 12.354 12.354 ] /Matrix [ 1 0 0 1 0 0 ] /Resources 25 0 R /Length 488 >>        
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.98878 0 m
+2.98878 1.65067 1.65067 2.98878 0 2.98878 c
+-1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c
+-2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c
+1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
+endobj
+25 0 obj
+<< /ExtGState 1 0 R /ProcSet [ /PDF ] >>
+endobj
+26 0 obj
+<< /1 18 0 R/Off 20 0 R >>
+endobj
+27 0 obj
+<< /1 22 0 R/Off 24 0 R >>
+endobj
+28 0 obj
+<< /N 26 0 R /D 27 0 R  >>
+endobj
+30 0 obj
+<< /2 18 0 R/Off 20 0 R >>
+endobj
+31 0 obj
+<< /2 22 0 R/Off 24 0 R >>
+endobj
+32 0 obj
+<< /N 30 0 R /D 31 0 R  >>
+endobj
+34 0 obj
+<< /3 18 0 R/Off 20 0 R >>
+endobj
+35 0 obj
+<< /3 22 0 R/Off 24 0 R >>
+endobj
+36 0 obj
+<< /N 34 0 R /D 35 0 R  >>
+endobj
+12 0 obj
+[ 14 0 R ]
+endobj
+17 0 obj
+[ 29 0 R 33 0 R 37 0 R ]
+endobj
+15 0 obj
+[  (Duck) (B\303\244r) (Hippo) ]
+endobj
+40 0 obj
+<< /Length 215 >>        
+stream
+/opacity1 gs
+BT
+/F23 9.96264 Tf
+1 0 0 1 148.712 705.133 Tm [<0069003200740069>]TJ
+1 0 0 1 148.712 693.177 Tm [<007400740074>]TJ
+1 0 0 1 148.712 681.222 Tm [<007400740074>]TJ
+1 0 0 1 303.133 139.255 Tm [<0052>]TJ
+ET
+endstream
+endobj
+39 0 obj
+<< /Type /Page /Contents 40 0 R /Resources 38 0 R /MediaBox [ 0 0 595.276 841.89 ] /Parent 41 0 R /Annots 42 0 R >>
+endobj
+42 0 obj
+[ 14 0 R 29 0 R 33 0 R 37 0 R ]
+endobj
+14 0 obj
+<< /Type /Annot /Subtype /Widget /AS /Yes /F 0 /Parent 11 0 R /AP 13 0 R  /Rect [ 169.464 705.133 181.42 717.088 ] >>
+endobj
+29 0 obj
+<< /Type /Annot /Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 28 0 R  /Rect [ 164.493 681.222 176.448 693.177 ] >>
+endobj
+33 0 obj
+<< /Type /Annot /Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 32 0 R  /Rect [ 176.448 681.222 188.403 693.177 ] >>
+endobj
+37 0 obj
+<< /Type /Annot /Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 36 0 R  /Rect [ 188.403 681.222 200.359 693.177 ] >>
+endobj
+38 0 obj
+<< /ExtGState 1 0 R /Font << /F23 7 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+1 0 obj
+<< /opacity1 <</ca 1/CA 1>>  >>
+endobj
+43 0 obj
+[ 11 0 R 16 0 R ]
+endobj
+44 0 obj
+<< /Fields 43 0 R  >>
+endobj
+45 0 obj
+[ 50 [ 444 ] 82 [ 500 ] 105 [ 389 ] 116 [ 528 ] 403 [ 778 ] ]
+endobj
+47 0 obj
+<< /Length 51 >>         
+[BINARY STREAM]
+endobj
+48 0 obj
+<< /Subtype /CIDFontType0C /Length 1062 >>       
+[BINARY STREAM]
+endobj
+46 0 obj
+<< /Type /FontDescriptor /FontName /CXPWEC+LMRoman10-Regular /Flags 4 /FontBBox [ -430 -290 1417 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 93 /XHeight 431 /FontFile3 48 0 R /CIDSet 47 0 R >>
+endobj
+49 0 obj
+<< /Length 748 >>        
+stream
+%!PS-Adobe-3.0 Resource-CMap
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-CXPWEC-LMRoman10-Regular-0)
+%%Title: (TeX-CXPWEC-LMRoman10-Regular-0 TeX CXPWEC-LMRoman10-Regular 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (CXPWEC-LMRoman10-Regular)
+/Supplement 0
+>> def
+/CMapName /TeX-Identity-CXPWEC-LMRoman10-Regular def
+/CMapType 2 def
+1 begincodespacerange
+<0000> <FFFF>
+endcodespacerange
+0 beginbfrange
+endbfrange
+5 beginbfchar
+<0032> <0065>
+<0052> <0031>
+<0069> <0074>
+<0074> <0078>
+<0193> <00D7>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+endstream
+endobj
+7 0 obj
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /CXPWEC+LMRoman10-Regular /DescendantFonts [ 50 0 R ] /ToUnicode 49 0 R >>
+endobj
+50 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /CXPWEC+LMRoman10-Regular /FontDescriptor 46 0 R /W 45 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+endobj
+41 0 obj
+<< /Type /Pages  /Count 1 /Kids [ 39 0 R ] >>
+endobj
+51 0 obj
+<< /Type /Catalog /Pages 41 0 R /Lang (en-US)/AcroForm 44 0 R >>
+endobj
+52 0 obj
+<< /Creator (TeX)/Producer (LuaTeX)/CreationDate (D:20010101205959-00'00')/ModDate (D:20010101205959-00'00') /Trapped /False >>
+endobj
+xref
+0 53
+0000000002 65535 f 
+0000005547 00000 n 
+0000000003 00000 f 
+0000000004 00000 f 
+0000000000 00000 f 
+0000000020 00000 n 
+0000000500 00000 n 
+0000008045 00000 n 
+0000000585 00000 n 
+0000001009 00000 n 
+0000001065 00000 n 
+0000001108 00000 n 
+0000004350 00000 n 
+0000001183 00000 n 
+0000004922 00000 n 
+0000004418 00000 n 
+0000001216 00000 n 
+0000004377 00000 n 
+0000001303 00000 n 
+0000001963 00000 n 
+0000002020 00000 n 
+0000002472 00000 n 
+0000002529 00000 n 
+0000003189 00000 n 
+0000003246 00000 n 
+0000003906 00000 n 
+0000003963 00000 n 
+0000004006 00000 n 
+0000004049 00000 n 
+0000005056 00000 n 
+0000004092 00000 n 
+0000004135 00000 n 
+0000004178 00000 n 
+0000005191 00000 n 
+0000004221 00000 n 
+0000004264 00000 n 
+0000004307 00000 n 
+0000005326 00000 n 
+0000005461 00000 n 
+0000004742 00000 n 
+0000004467 00000 n 
+0000008398 00000 n 
+0000004874 00000 n 
+0000005594 00000 n 
+0000005628 00000 n 
+0000005666 00000 n 
+0000007001 00000 n 
+0000005744 00000 n 
+0000005855 00000 n 
+0000007237 00000 n 
+0000008198 00000 n 
+0000008460 00000 n 
+0000008541 00000 n 
+trailer
+<< /Size 53 /Root 51 0 R /Info 52 0 R /ID [ <2350CAD05F8A7AF0AA4058486855344F> <2350CAD05F8A7AF0AA4058486855344F> ] >>
+startxref
+8685
+%%EOF
diff --git a/testfiles-dvips/xform-appearance.pvt b/testfiles/xform-appearance.pvt
similarity index 100%
copy from testfiles-dvips/xform-appearance.pvt
copy to testfiles/xform-appearance.pvt
diff --git a/testfiles/tag-checkbox.tpf b/testfiles/xform-appearance.tpf
similarity index 53%
copy from testfiles/tag-checkbox.tpf
copy to testfiles/xform-appearance.tpf
index 4fc86e6..8c20b1c 100644
--- a/testfiles/tag-checkbox.tpf
+++ b/testfiles/xform-appearance.tpf
@@ -1,16 +1,13 @@
 %PDF-1.5
 %ÐÔÅØ
-10 0 obj
-<< /MCID 0  >>
-endobj
-12 0 obj
+5 0 obj
 <<
 /Type /XObject
 /Subtype /Form
 /BBox [0 0 11.955 12.752]
 /FormType 1
 /Matrix [1 0 0 1 0 0]
-/Resources 13 0 R
+/Resources 6 0 R
 /Length 322       
 >>
 stream
@@ -36,21 +33,21 @@ q
 Q
 endstream
 endobj
-13 0 obj
+6 0 obj
 <<
 /ExtGState 1 0 R
-/Font << /F28 14 0 R >>
+/Font << /F28 7 0 R >>
 /ProcSet [ /PDF /Text ]
 >>
 endobj
-15 0 obj
+8 0 obj
 <<
 /Type /XObject
 /Subtype /Form
 /BBox [0 0 11.955 12.752]
 /FormType 1
 /Matrix [1 0 0 1 0 0]
-/Resources 16 0 R
+/Resources 9 0 R
 /Length 250       
 >>
 stream
@@ -72,127 +69,316 @@ q
 Q
 endstream
 endobj
-16 0 obj
+9 0 obj
 <<
 /ExtGState 1 0 R
 /ProcSet [ /PDF ]
 >>
 endobj
-17 0 obj
-<< /Yes 12 0 R/Off 15 0 R >>
+10 0 obj
+<< /Yes 5 0 R/Off 8 0 R >>
+endobj
+11 0 obj
+<< /T (a) /V /Yes /DV /Yes /FT /Btn /Kids 12 0 R /Ff 0  >>
+endobj
+13 0 obj
+<< /N 10 0 R  >>
+endobj
+16 0 obj
+<< /T (A) /FT /Btn /Opt 15 0 R /V /0 /DV /0 /Kids 17 0 R /Ff 32768  >>
 endobj
 18 0 obj
-<< /T (a) /V /Off /DV /Off /FT /Btn /Kids 19 0 R /Ff 0  >>
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 12.354 12.354]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 19 0 R
+/Length 488       
+>>
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.39102 0 m
+2.39102 1.32053 1.32053 2.39102 0 2.39102 c
+-1.32053 2.39102 -2.39102 1.32053 -2.39102 0 c
+-2.39102 -1.32053 -1.32053 -2.39102 0 -2.39102 c
+1.32053 -2.39102 2.39102 -1.32053 2.39102 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
+endobj
+19 0 obj
+<<
+/ExtGState 1 0 R
+/ProcSet [ /PDF ]
+>>
+endobj
+20 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 12.354 12.354]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 21 0 R
+/Length 280       
+>>
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+Q
+0 g 0 G
+endstream
 endobj
 21 0 obj
-<< /N 17 0 R  >>
+<<
+/ExtGState 1 0 R
+/ProcSet [ /PDF ]
+>>
+endobj
+22 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 12.354 12.354]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 23 0 R
+/Length 488       
+>>
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.98878 0 m
+2.98878 1.65067 1.65067 2.98878 0 2.98878 c
+-1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c
+-2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c
+1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
 endobj
 23 0 obj
-<< /Type/OBJR/Obj 22 0 R >>
+<<
+/ExtGState 1 0 R
+/ProcSet [ /PDF ]
+>>
 endobj
 24 0 obj
-<< /MCID 1  >>
+<<
+/Type /XObject
+/Subtype /Form
+/BBox [0 0 12.354 12.354]
+/FormType 1
+/Matrix [1 0 0 1 0 0]
+/Resources 25 0 R
+/Length 488       
+>>
+stream
+1 0 0 1 6.177 6.177 cm
+q
+0.3985 w
+0 g 0 G
+0 J
+0 j
+10 M
+[] 0 d
+5.97758 0 m
+5.97758 3.30133 3.30133 5.97758 0 5.97758 c
+-3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c
+-5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c
+3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c
+h
+0 0 m
+S
+2.98878 0 m
+2.98878 1.65067 1.65067 2.98878 0 2.98878 c
+-1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c
+-2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c
+1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c
+h
+0 0 m
+f
+Q
+0 g 0 G
+endstream
 endobj
-19 0 obj
-[ 22 0 R ]
+25 0 obj
+<<
+/ExtGState 1 0 R
+/ProcSet [ /PDF ]
+>>
 endobj
 26 0 obj
+<< /1 18 0 R/Off 20 0 R >>
+endobj
+27 0 obj
+<< /1 22 0 R/Off 24 0 R >>
+endobj
+28 0 obj
+<< /N 26 0 R /D 27 0 R  >>
+endobj
+30 0 obj
+<< /2 18 0 R/Off 20 0 R >>
+endobj
+31 0 obj
+<< /2 22 0 R/Off 24 0 R >>
+endobj
+32 0 obj
+<< /N 30 0 R /D 31 0 R  >>
+endobj
+34 0 obj
+<< /3 18 0 R/Off 20 0 R >>
+endobj
+35 0 obj
+<< /3 22 0 R/Off 24 0 R >>
+endobj
+36 0 obj
+<< /N 34 0 R /D 35 0 R  >>
+endobj
+12 0 obj
+[ 14 0 R ]
+endobj
+17 0 obj
+[ 29 0 R 33 0 R 37 0 R ]
+endobj
+15 0 obj
+[  (Duck) (B\303\244r) (Hippo) ]
+endobj
+40 0 obj
 <<
-/Length 201       
+/Length 138       
 >>
 stream
 /opacity1 gs
-/P /l3pdf1 BDC
-BT
-/F19 9.9626 Tf 148.712 705.133 Td [(aaaa)]TJ
-ET
-EMC
-/P /l3pdf2 BDC
-BT
-/F19 9.9626 Tf 183.914 705.133 Td [(bbbb)]TJ
-ET
-EMC
 BT
-/F19 9.9626 Tf 303.133 139.255 Td [(1)]TJ
+/F19 9.9626 Tf 148.712 705.133 Td [(text)]TJ 0 -11.956 Td [(xxx)]TJ 0 -11.955 Td [(xxx)]TJ 154.421 -541.967 Td [(1)]TJ
 ET
 endstream
 endobj
-11 0 obj
+39 0 obj
 <<
 /Type /Page
-/Contents 26 0 R
-/Resources 25 0 R
+/Contents 40 0 R
+/Resources 38 0 R
 /MediaBox [0 0 595.276 841.89]
-/Tabs /S /StructParents 0 
-/Parent 28 0 R
-/Annots [ 22 0 R ]
+/Parent 42 0 R
+/Annots [ 14 0 R 29 0 R 33 0 R 37 0 R ]
 >>
 endobj
-22 0 obj
+14 0 obj
 <<
 /Type /Annot
-/Subtype /Widget /AS /Off /F 0 /StructParent 1 /Parent 18 0 R /AP 21 0 R 
-/Rect [171.959 705.133 183.914 717.088]
+/Subtype /Widget /AS /Yes /F 0 /Parent 11 0 R /AP 13 0 R 
+/Rect [169.468 705.133 181.423 717.088]
 >>
 endobj
-25 0 obj
+29 0 obj
 <<
-/Properties <</l3pdf1 10 0 R /l3pdf2 24 0 R >>/ExtGState 1 0 R 
-/Font << /F19 27 0 R >>
-/ProcSet [ /PDF /Text ]
+/Type /Annot
+/Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 28 0 R 
+/Rect [164.487 681.222 176.442 693.177]
 >>
 endobj
-1 0 obj
-<< /opacity1 <</ca 1/CA 1>>  >>
-endobj
-29 0 obj
-[ 18 0 R ]
-endobj
-30 0 obj
-<< /Fields 29 0 R  >>
-endobj
-31 0 obj
-<< /Marked true  >>
-endobj
-6 0 obj
-<< /Nums [0 [ 9 0 R 9 0 R ]
-1 20 0 R
-] >>
+33 0 obj
+<<
+/Type /Annot
+/Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 32 0 R 
+/Rect [176.442 681.222 188.397 693.177]
+>>
 endobj
-7 0 obj
-<< /DocumentFragment /Art /Aside /Note /Title /H1 /Sub /Span /H7 /H6 /H8 /H6 /H9 /H6 /H10 /H6 /FENote /Note /Em /Span /Strong /Span  >>
+37 0 obj
+<<
+/Type /Annot
+/Subtype /Widget /AS /Off /F 0 /Parent 16 0 R /AP 36 0 R 
+/Rect [188.397 681.222 200.352 693.177]
+>>
 endobj
-8 0 obj
-[  ]
+38 0 obj
+<<
+/ExtGState 1 0 R 
+/Font << /F19 41 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
 endobj
-9 0 obj
-<<  /Type /StructElem /S /P /P 5 0 R /K [<</Type /MCR /Pg 11 0 R/MCID 0>> 20 0 R <</Type /MCR /Pg 11 0 R/MCID 1>>] >>
+1 0 obj
+<< /opacity1 <</ca 1/CA 1>>  >>
 endobj
-20 0 obj
-<<  /Type /StructElem /S /Form /P 9 0 R /K 23 0 R >>
+43 0 obj
+[ 11 0 R 16 0 R ]
 endobj
-5 0 obj
-<<  /Type /StructTreeRoot /K 9 0 R /ParentTree 6 0 R /RoleMap 7 0 R /Namespaces 8 0 R >>
+44 0 obj
+<< /Fields 43 0 R  >>
 endobj
-32 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]
+45 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 555.6 527.8 722.2 527.8]
 endobj
-34 0 obj
+47 0 obj
 [777.6]
 endobj
-35 0 obj
+48 0 obj
 <<
-/Length1 1393
-/Length2 7602
+/Length1 1410
+/Length2 7913
 /Length3 0
-/Length 8995      
+/Length 9323      
 >>
 [BINARY STREAM]
 endobj
-36 0 obj
+49 0 obj
 <<
 /Type /FontDescriptor
-/FontName /XFWMEY+CMR10
+/FontName /JQDFPK+CMR10
 /Flags 4
 /FontBBox [-40 -250 1009 750]
 /Ascent 694
@@ -201,11 +387,11 @@ endobj
 /ItalicAngle 0
 /StemV 69
 /XHeight 431
-/CharSet (/a/b/one)
-/FontFile 35 0 R
+/CharSet (/e/one/t/x)
+/FontFile 48 0 R
 >>
 endobj
-37 0 obj
+50 0 obj
 <<
 /Length1 721
 /Length2 1088
@@ -214,7 +400,7 @@ endobj
 >>
 [BINARY STREAM]
 endobj
-38 0 obj
+51 0 obj
 <<
 /Type /FontDescriptor
 /FontName /LNEZCO+SFRM1000
@@ -227,16 +413,16 @@ endobj
 /StemV 50
 /XHeight 430
 /CharSet (/multiply)
-/FontFile 37 0 R
+/FontFile 50 0 R
 >>
 endobj
-33 0 obj
+46 0 obj
 <<
 /Type /Encoding
 /Differences [214/multiply]
 >>
 endobj
-39 0 obj
+52 0 obj
 <<
 /Length 1724      
 >>
@@ -358,19 +544,19 @@ end
 %%EOF
 endstream
 endobj
-27 0 obj
+41 0 obj
 <<
 /Type /Font
 /Subtype /Type1
-/BaseFont /XFWMEY+CMR10
-/FontDescriptor 36 0 R
+/BaseFont /JQDFPK+CMR10
+/FontDescriptor 49 0 R
 /FirstChar 49
-/LastChar 98
-/Widths 32 0 R
-/ToUnicode 39 0 R
+/LastChar 120
+/Widths 45 0 R
+/ToUnicode 52 0 R
 >>
 endobj
-40 0 obj
+53 0 obj
 <<
 /Length 1568      
 >>
@@ -480,89 +666,102 @@ end
 %%EOF
 endstream
 endobj
-14 0 obj
+7 0 obj
 <<
 /Type /Font
 /Subtype /Type1
 /BaseFont /LNEZCO+SFRM1000
-/FontDescriptor 38 0 R
+/FontDescriptor 51 0 R
 /FirstChar 214
 /LastChar 214
-/Widths 34 0 R
-/Encoding 33 0 R
-/ToUnicode 40 0 R
+/Widths 47 0 R
+/Encoding 46 0 R
+/ToUnicode 53 0 R
 >>
 endobj
-28 0 obj
+42 0 obj
 <<
 /Type /Pages
 /Count 1
-/Kids [11 0 R]
+/Kids [39 0 R]
 >>
 endobj
-41 0 obj
+54 0 obj
 <<
 /Type /Catalog
-/Pages 28 0 R
-/MarkInfo 31 0 R/Lang (en-US)/StructTreeRoot 5 0 R/AcroForm 30 0 R
+/Pages 42 0 R
+/Lang (en-US)/AcroForm 44 0 R
 >>
 endobj
-42 0 obj
+55 0 obj
 <<
 /Creator (TeX)/Producer (pdfTeX)/CreationDate (D:20010101205959-00'00')/ModDate (D:20010101205959-00'00')
 /Trapped /False
 >>
 endobj
 xref
-0 43
+0 56
 0000000002 65535 f 
-0000002055 00000 n 
+0000005412 00000 n 
 0000000003 00000 f 
 0000000004 00000 f 
 0000000000 00000 f 
-0000002633 00000 n 
-0000002203 00000 n 
-0000002260 00000 n 
-0000002411 00000 n 
-0000002431 00000 n 
 0000000015 00000 n 
-0000001611 00000 n 
-0000000046 00000 n 
-0000000535 00000 n 
-0000018116 00000 n 
-0000000622 00000 n 
-0000001039 00000 n 
-0000001096 00000 n 
-0000001141 00000 n 
-0000001324 00000 n 
-0000002564 00000 n 
-0000001216 00000 n 
-0000001772 00000 n 
-0000001249 00000 n 
-0000001293 00000 n 
-0000001921 00000 n 
-0000001351 00000 n 
-0000016332 00000 n 
-0000018295 00000 n 
-0000002102 00000 n 
-0000002129 00000 n 
-0000002167 00000 n 
-0000002737 00000 n 
-0000014483 00000 n 
-0000003016 00000 n 
-0000003040 00000 n 
-0000012133 00000 n 
-0000012356 00000 n 
-0000014262 00000 n 
-0000014549 00000 n 
-0000016489 00000 n 
-0000018354 00000 n 
-0000018472 00000 n 
+0000000502 00000 n 
+0000021369 00000 n 
+0000000587 00000 n 
+0000001002 00000 n 
+0000001058 00000 n 
+0000001101 00000 n 
+0000004323 00000 n 
+0000001176 00000 n 
+0000004792 00000 n 
+0000004391 00000 n 
+0000001209 00000 n 
+0000004350 00000 n 
+0000001296 00000 n 
+0000001951 00000 n 
+0000002008 00000 n 
+0000002455 00000 n 
+0000002512 00000 n 
+0000003167 00000 n 
+0000003224 00000 n 
+0000003879 00000 n 
+0000003936 00000 n 
+0000003979 00000 n 
+0000004022 00000 n 
+0000004925 00000 n 
+0000004065 00000 n 
+0000004108 00000 n 
+0000004151 00000 n 
+0000005058 00000 n 
+0000004194 00000 n 
+0000004237 00000 n 
+0000004280 00000 n 
+0000005191 00000 n 
+0000005324 00000 n 
+0000004637 00000 n 
+0000004440 00000 n 
+0000019584 00000 n 
+0000021547 00000 n 
+0000005459 00000 n 
+0000005493 00000 n 
+0000005531 00000 n 
+0000017735 00000 n 
+0000005938 00000 n 
+0000005962 00000 n 
+0000015383 00000 n 
+0000015608 00000 n 
+0000017514 00000 n 
+0000017801 00000 n 
+0000019742 00000 n 
+0000021606 00000 n 
+0000021687 00000 n 
 trailer
-<< /Size 43
-/Root 41 0 R
-/Info 42 0 R
+<< /Size 56
+/Root 54 0 R
+/Info 55 0 R
 /ID [<9BD18DF3359C1216B83ADB4AA401CC9A> <9BD18DF3359C1216B83ADB4AA401CC9A>] >>
 startxref
-18616
+21831
 %%EOF
diff --git a/testfiles/xform-appearance.xetex.tpf b/testfiles/xform-appearance.xetex.tpf
new file mode 100644
index 0000000..13ae457
--- /dev/null
+++ b/testfiles/xform-appearance.xetex.tpf
@@ -0,0 +1,282 @@
+%PDF-1.5
+%äðíø
+11 0 obj
+<</Font<</F1 5 0 R>>/ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+4 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-72 68.015 -60.045 80.767]/Matrix[1
+0 0 1 72 -72]/Resources 11 0 R/Length 257>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q .3985 w -72 80.568 m -60.045 80.568 l S Q q .3985 w -71.801 68.413 m -71.801 80.369 l S Q BT /F1 9.9626 Tf -69.898 72 Td[<0193>]TJ ET q .3985 w -60.244 68.413 m -60.244 80.369 l S Q q .3985 w -72 68.214 m -60.045 68.214 l S Q
+endstream
+endobj
+13 0 obj
+<</ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+12 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-60.045 68.015 -48.09 80.767]/Matrix[1
+0 0 1 60.045 -72]/Resources 13 0 R/Length 219>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q .3985 w -60.045 80.568 m -48.09 80.568 l S Q q .3985 w -59.846 68.413 m -59.846 80.369 l S Q q .3985 w -48.289 68.413 m -48.289 80.369 l S Q q .3985 w -60.045 68.214 m -48.09 68.214 l S Q
+endstream
+endobj
+15 0 obj
+<</ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+14 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-48.09 72 -35.736 84.354]/Matrix[1 0
+0 1 48.09 -72]/Resources 15 0 R/Length 1594>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q 1 0 0 1 -41.913 78.177 cm 0.3985 w 1 0 0 1 41.913 -78.177 cm 0 g 0 G 1 0 0 1 -41.913 78.177 cm 0 J 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 0 j 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 10 M 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm [] 0 d 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 5.97758 0 m 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 5.97758 3.30133 3.30133 5.97758 0 5.97758 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm -3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm -5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm h 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 0 0 m 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm S 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 2.39102 0 m 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 2.39102 1.32053 1.32053 2.39102 0 2.39102 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm -1.32053 2.39102 -2.39102 1.32053 -2.39102 0 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm -2.39102 -1.32053 -1.32053 -2.39102 0 -2.39102 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 1.32053 -2.39102 2.39102 -1.32053 2.39102 0 c 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm h 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm 0 0 m 1 0 0 1 41.913 -78.177 cm 1 0 0 1 -41.913 78.177 cm f 1 0 0 1 41.913 -78.177 cm Q 0 G 0 g 0 g 0 G
+endstream
+endobj
+17 0 obj
+<</ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+16 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-35.736 72 -23.382 84.354]/Matrix[1
+0 0 1 35.736 -72]/Resources 17 0 R/Length 970>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q 1 0 0 1 -29.559 78.177 cm 0.3985 w 1 0 0 1 29.559 -78.177 cm 0 g 0 G 1 0 0 1 -29.559 78.177 cm 0 J 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 0 j 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 10 M 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm [] 0 d 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 5.97758 0 m 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 5.97758 3.30133 3.30133 5.97758 0 5.97758 c 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm -3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm -5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm h 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm 0 0 m 1 0 0 1 29.559 -78.177 cm 1 0 0 1 -29.559 78.177 cm S 1 0 0 1 29.559 -78.177 cm Q 0 G 0 g 0 g 0 G
+endstream
+endobj
+19 0 obj
+<</ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+18 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-23.382 72 -11.029 84.354]/Matrix[1
+0 0 1 23.382 -72]/Resources 19 0 R/Length 1594>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q 1 0 0 1 -17.205 78.177 cm 0.3985 w 1 0 0 1 17.205 -78.177 cm 0 g 0 G 1 0 0 1 -17.205 78.177 cm 0 J 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 0 j 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 10 M 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm [] 0 d 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 5.97758 0 m 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 5.97758 3.30133 3.30133 5.97758 0 5.97758 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm -3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm -5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm h 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 0 0 m 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm S 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 2.98878 0 m 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 2.98878 1.65067 1.65067 2.98878 0 2.98878 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm -1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm -2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm h 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm 0 0 m 1 0 0 1 17.205 -78.177 cm 1 0 0 1 -17.205 78.177 cm f 1 0 0 1 17.205 -78.177 cm Q 0 G 0 g 0 g 0 G
+endstream
+endobj
+21 0 obj
+<</ExtGState 7 0 R/Pattern 8 0 R/Shading 9 0 R/ColorSpace 10 0 R/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+20 0 obj
+<</Type/XObject/Subtype/Form/FormType 1/BBox[-11.029 72 1.325 84.354]/Matrix[1 0
+0 1 11.029 -72]/Resources 21 0 R/Length 1552>>
+stream
+ 0 G 0 g 0 g 0 G /opacity1 gs q 1 0 0 1 -4.852 78.177 cm 0.3985 w 1 0 0 1 4.852 -78.177 cm 0 g 0 G 1 0 0 1 -4.852 78.177 cm 0 J 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 0 j 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 10 M 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm [] 0 d 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 5.97758 0 m 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 5.97758 3.30133 3.30133 5.97758 0 5.97758 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm -3.30133 5.97758 -5.97758 3.30133 -5.97758 0 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm -5.97758 -3.30133 -3.30133 -5.97758 0 -5.97758 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 3.30133 -5.97758 5.97758 -3.30133 5.97758 0 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm h 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 0 0 m 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm S 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 2.98878 0 m 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 2.98878 1.65067 1.65067 2.98878 0 2.98878 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm -1.65067 2.98878 -2.98878 1.65067 -2.98878 0 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm -2.98878 -1.65067 -1.65067 -2.98878 0 -2.98878 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 1.65067 -2.98878 2.98878 -1.65067 2.98878 0 c 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm h 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm 0 0 m 1 0 0 1 4.852 -78.177 cm 1 0 0 1 -4.852 78.177 cm f 1 0 0 1 4.852 -78.177 cm Q 0 G 0 g 0 g 0 G
+endstream
+endobj
+44 0 obj
+<</Length 426>>
+stream
+ q 1 0 0 1 72 769.89 cm 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs 0 G 0 g 0 g 0 G /opacity1 gs BT /F1 9.9626 Tf 76.712 -64.757 Td[<0069003200740069>]TJ ET BT /F1 9.9626 Tf 76.712 -76.712 Td[<007400740074>]TJ 0 -11.956 Td[<007400740074>]TJ ET BT /F1 9.9626 Tf 231.133 -630.635 Td[<0052>]TJ ET Q
+endstream
+endobj
+45 0 obj
+<</ExtGState 7 0 R/Font<</F1 5 0 R>>/ProcSet[/PDF/Text/ImageC/ImageB/ImageI]>>
+endobj
+7 0 obj
+<</opacity1<</ca 1/CA 1>>>>
+endobj
+10 0 obj
+<<>>
+endobj
+8 0 obj
+<<>>
+endobj
+9 0 obj
+<<>>
+endobj
+23 0 obj
+<</Yes 4 0 R/Off 12 0 R>>
+endobj
+24 0 obj
+<</T(a)/V/Yes/DV/Yes/FT/Btn/Kids 22 0 R/Ff 0>>
+endobj
+22 0 obj
+[26 0 R]
+endobj
+25 0 obj
+<</N 23 0 R>>
+endobj
+26 0 obj
+<</Type/Annot/Subtype/Widget/AS/Yes/F 0/Parent 24 0 R/AP 25 0 R/Rect[169.465 705.133
+181.42 717.088]>>
+endobj
+27 0 obj
+[(Duck)<42c3a472>(Hippo)]
+endobj
+31 0 obj
+<</T(A)/FT/Btn/Opt 27 0 R/V/0/DV/0/Kids 28 0 R/Ff 32768>>
+endobj
+28 0 obj
+[33 0 R 37 0 R 41 0 R]
+endobj
+29 0 obj
+<</1 14 0 R/Off 16 0 R>>
+endobj
+30 0 obj
+<</1 18 0 R/Off 20 0 R>>
+endobj
+32 0 obj
+<</N 29 0 R/D 30 0 R>>
+endobj
+33 0 obj
+<</Type/Annot/Subtype/Widget/AS/Off/F 0/Parent 31 0 R/AP 32 0 R/Rect[164.493 681.222
+176.448 693.177]>>
+endobj
+34 0 obj
+<</2 14 0 R/Off 16 0 R>>
+endobj
+35 0 obj
+<</2 18 0 R/Off 20 0 R>>
+endobj
+36 0 obj
+<</N 34 0 R/D 35 0 R>>
+endobj
+37 0 obj
+<</Type/Annot/Subtype/Widget/AS/Off/F 0/Parent 31 0 R/AP 36 0 R/Rect[176.448 681.222
+188.403 693.177]>>
+endobj
+38 0 obj
+<</3 14 0 R/Off 16 0 R>>
+endobj
+39 0 obj
+<</3 18 0 R/Off 20 0 R>>
+endobj
+40 0 obj
+<</N 38 0 R/D 39 0 R>>
+endobj
+41 0 obj
+<</Type/Annot/Subtype/Widget/AS/Off/F 0/Parent 31 0 R/AP 40 0 R/Rect[188.403 681.222
+200.359 693.177]>>
+endobj
+42 0 obj
+[24 0 R 31 0 R]
+endobj
+43 0 obj
+<</Fields 42 0 R>>
+endobj
+47 0 obj
+[26 0 R 33 0 R 37 0 R 41 0 R]
+endobj
+3 0 obj
+<</Resources 45 0 R/Type/Page/Parent 46 0 R/Contents[44 0 R]/Annots 47 0 R>>
+endobj
+46 0 obj
+<</Type/Pages/Count 1/Kids[3 0 R]/MediaBox[0 0 595.28 841.89]>>
+endobj
+2 0 obj
+<</Creator(TeX)/Producer(xetex)/CreationDate(D:20010101194934+01'00')/ModDate(D:20010101205959-00'00')>>
+endobj
+1 0 obj
+<</Lang(en-US)/AcroForm 43 0 R/Pages 46 0 R/Type/Catalog>>
+endobj
+48 0 obj
+<</Length 412>>
+stream
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CMapName /EXQIVM+LMRoman10-Regular-UTF16 def
+/CMapType 2 def
+/CIDSystemInfo <<
+  /Registry (Adobe)
+  /Ordering (UCS)
+  /Supplement 0
+>> def
+1 begincodespacerange
+<0000> <FFFF>
+endcodespacerange
+5 beginbfchar
+<0032> <0065>
+<0052> <0031>
+<0069> <0074>
+<0074> <0078>
+<0193> <00D7>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+endstream
+endobj
+50 0 obj
+<</Subtype/CIDFontType0C/Length 1041>>
+[BINARY STREAM]
+endobj
+51 0 obj
+[50[444]82[500]105[389]116[528]403[778]]
+endobj
+52 0 obj
+<</Length 51>>
+[BINARY STREAM]
+endobj
+6 0 obj
+<</Type/Font/Subtype/CIDFontType0/BaseFont/EXQIVM+LMRoman10-Regular/CIDSystemInfo<</Registry(Adobe)/Ordering(Identity)/Supplement
+0>>/FontDescriptor 49 0 R/DW 280/W 51 0 R>>
+endobj
+49 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/EXQIVM+LMRoman10-Regular/FontFile3
+50 0 R/CIDSet 52 0 R>>
+endobj
+5 0 obj
+<</Type/Font/Subtype/Type0/BaseFont/EXQIVM+LMRoman10-Regular-Identity-H/Encoding/Identity-H/DescendantFonts[6 0 R]/ToUnicode
+48 0 R>>
+endobj
+xref
+0 53
+0000000000 65535 f 
+0000010169 00000 n 
+0000010049 00000 n 
+0000009877 00000 n 
+0000000156 00000 n 
+0000012426 00000 n 
+0000011976 00000 n 
+0000008503 00000 n 
+0000008567 00000 n 
+0000008587 00000 n 
+0000008546 00000 n 
+0000000015 00000 n 
+0000000694 00000 n 
+0000000571 00000 n 
+0000001202 00000 n 
+0000001079 00000 n 
+0000003081 00000 n 
+0000002958 00000 n 
+0000004337 00000 n 
+0000004214 00000 n 
+0000006218 00000 n 
+0000006095 00000 n 
+0000008712 00000 n 
+0000008607 00000 n 
+0000008649 00000 n 
+0000008737 00000 n 
+0000008767 00000 n 
+0000008886 00000 n 
+0000009002 00000 n 
+0000009041 00000 n 
+0000009082 00000 n 
+0000008928 00000 n 
+0000009123 00000 n 
+0000009162 00000 n 
+0000009282 00000 n 
+0000009323 00000 n 
+0000009364 00000 n 
+0000009403 00000 n 
+0000009523 00000 n 
+0000009564 00000 n 
+0000009605 00000 n 
+0000009644 00000 n 
+0000009764 00000 n 
+0000009796 00000 n 
+0000007932 00000 n 
+0000008408 00000 n 
+0000009969 00000 n 
+0000009831 00000 n 
+0000010243 00000 n 
+0000012165 00000 n 
+0000010705 00000 n 
+0000011819 00000 n 
+0000011876 00000 n 
+trailer
+<</ID[<ID-STRING><ID-STRING>]/Root
+1 0 R/Info 2 0 R/Size 53>>
+startxref
+12575
+%%EOF





More information about the latex3-commits mailing list.