[XeTeX] Defining ExtGState objects

Heiko Oberdiek heiko.oberdiek at googlemail.com
Wed Sep 7 17:34:30 CEST 2011


On Wed, Sep 07, 2011 at 01:02:38PM +0200, Zdenek Wagner wrote:

> \documentclass{article}
> \special{pdf: object @opoff << /Type /ExtGState /op false /OP false /OPM 0 >>}
> \special{pdf: object @opon << /Type /ExtGState /op true /OP true /OPM 1 >>}
> \special{pdf: object @extgs << /GSko @opoff 0 R /GSop @opon 0 R >>}
> \special{pdf: put @resources << /ExtGState @extgs 0 R >>}
> \begin{document}
> A
> \end{document}
> 
> The requested output (achieved by pdftex) is
> % 1 0 obj
> << /Type /ExtGState /op false /OP false /OPM 0 >>
> % 3 0 obj
> << /Type /ExtGState /op true /OP true /OPM 1 >>
> % 4 0 obj
>  << /GSko 1 0 R /GSop 3 0 R >>
> 
> However, xdvipdfmx reports this error:
> $ xdvipdfmx -vv -z0 test-xetex
> <FONTMAP:pdftex.map><FONTMAP:cid-x.map>DVI Comment:  XeTeX output
> 2011.09.07:1234
> test-xetex.xdv -> test-xetex.pdf
> <AGL:texglyphlist.txt>[1
> ** WARNING ** Could not find a name object.
> ** WARNING ** Could not find a key in dictionary object.
> ** WARNING ** Could not find an object definition for "extgs".
...

The references are different from pdfTeX, in pdfTeX you
specify the number followed by "0 R". But in dvipdfm(x)/XeTeX the
objects are referenced by name without "0 R":
  \special{pdf: object @extgs << /GSko @opoff /GSop @opon >>}
  \special{pdf: put @resources << /ExtGState @extgs >>}

Yours sincerely
  Heiko Oberdiek


More information about the XeTeX mailing list