diff options
author | Karl Berry <karl@freefriends.org> | 2014-12-01 00:02:22 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-12-01 00:02:22 +0000 |
commit | 0cc93a2d09127f686c92c363911bbdba4a91cbec (patch) | |
tree | 7423703246108c7c4683422e345779525422f3db | |
parent | c156b624cded72020cf220461aa5791f75a17f68 (diff) |
-sPAPERSIZE=a0 for pstricks under xetex
git-svn-id: svn://tug.org/texlive/trunk@35703 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Build/source/texk/dvipdfm-x/ChangeLog | 7 | ||||
-rw-r--r-- | Build/source/texk/dvipdfm-x/data/dvipdfmx.cfg | 38 | ||||
-rw-r--r-- | Build/source/texk/dvipdfm-x/dvipdfmx.c | 2 | ||||
-rw-r--r-- | Master/texmf-dist/dvipdfmx/dvipdfmx.cfg | 36 |
4 files changed, 48 insertions, 35 deletions
diff --git a/Build/source/texk/dvipdfm-x/ChangeLog b/Build/source/texk/dvipdfm-x/ChangeLog index e501dd794c6..909e0c79462 100644 --- a/Build/source/texk/dvipdfm-x/ChangeLog +++ b/Build/source/texk/dvipdfm-x/ChangeLog @@ -1,3 +1,10 @@ +2014-12-01 Karl Berry <karl@tug.org> + + * data/dvipdfmx.cfg (D): add back -sPAPERSIZE=a0, needed for + pstricks under xetex; retain -dEPSCROP, needed for negative llx/lly. + From Akira, thread at + http://tug.org/pipermail/xetex/2014-November/025664.html. + 2014-11-29 Peter Breitenlohner <peb@mppmu.mpg.de> * dvipdfmx.test, xdvipdfmx.test: Also test --showpaper option. diff --git a/Build/source/texk/dvipdfm-x/data/dvipdfmx.cfg b/Build/source/texk/dvipdfm-x/data/dvipdfmx.cfg index d09c5d8e881..490de000745 100644 --- a/Build/source/texk/dvipdfm-x/data/dvipdfmx.cfg +++ b/Build/source/texk/dvipdfm-x/data/dvipdfmx.cfg @@ -120,6 +120,25 @@ P 0x003C %% ps2pdf is a front-end to gs. For a complete list of options, see %% http://ghostscript.com/doc/current/Ps2pdf.htm#Options %% +%% In TeX Live, we use the rungs wrapper instead of ps2pdf, becuse we +%% must omit the -dSAFER which ps2pdf specifies: in order for pstricks +%% to work with xetex, +%% /usr/local/texlive/*/texmf-dist/dvips/pstricks/pstricks.pro (for +%% example) needs to be accessed. Also, it is better to use our +%% supplied gs on Windows. +%% +%% Without the -dEPSCROP below, an eps file with negative llx/lly (as +%% created by MetaPost, for example) fails. In 2013, changes were made +%% to the drivers xetex.def, dvipdfmx.def, etc., to handle non-zero +%% llx/lly so we could use it. The file epsf-dvipdfmx.tex is available +%% from CTAN/TL/etc. to support plain's epsf.tex. +%% +%% In 2014, we discovered that -sPAPERSIZE=a0 was needed to support +%% pstricks under xetex; otherwise, images were cropped (see thread at +%% http://tug.org/pipermail/xetex/2014-November/025664.html). +%% Happily, it seems that using both -dEPSCROP and -sPAPERSIZE=a0 +%% simultaneously works ok. So that's we do below. +%% %% By default, gs encodes all images contained in a PS file using %% the lossy DCT (i.e., JPEG) filter. This often leads to inferior %% result (see the discussion at http://electron.mit.edu/~gsteele/pdf/). @@ -130,29 +149,12 @@ P 0x003C %% will also be re-encoded using Flate. To turn the conversion off, %% simply remove the options mentioned above. %% -%% The -dEPSCROP below converts PS files. Before TL 2013, -%% -sPAPERSIZE=a0 was used for this, and this failed when llx/lly was -%% negative. In 2013, changes were made to xetex.def, dvipdfmx.def, -%% etc., to handle non-zero llx/lly. Later, a file epsfdpx.tex was -%% created to "patch" plain's epsftex for this case. -%% -%% In TeX Live, we use the rungs wrapper instead of ps2pdf, becuse we -%% must omit the -dSAFER which ps2pdf specifies: in order for pstricks -%% to work with xetex, -%% /usr/local/texlive/*/texmf-dist/dvips/pstricks/pstricks.pro (for -%% example) needs to be accessed. (Also, it is better to use our -%% supplied gs on Windows.) You can also add -dNOSAFER to the ps2pdf -%% command line. -%% %% Incidentally, especially in TL, more than one dvipdfmx.cfg may be %% extant. You can find the one that is active by running: %% kpsewhich -progname=dvipdfmx -format='other text files' dvipdfmx.cfg %% and control which one is found by setting DVIPDFMXINPUTS. %% -D "rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" - -% pre-2013 invocation using -sPAPERSIZE instead of -dEPSCrop, no other changes: -%D "rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" +D "rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" % other random ps converters people have experimented with. %D "/usr/local/bin/ps2pdf -dEPSCrop '%i' '%o'" diff --git a/Build/source/texk/dvipdfm-x/dvipdfmx.c b/Build/source/texk/dvipdfm-x/dvipdfmx.c index 5ddc1a4fea0..155b4098f28 100644 --- a/Build/source/texk/dvipdfm-x/dvipdfmx.c +++ b/Build/source/texk/dvipdfm-x/dvipdfmx.c @@ -172,7 +172,7 @@ show_usage (void) printf (" %s --extractbb|--xbb|--ebb [OPTION]...\tBe \"extractbb\"\n", my_name); printf (" %s --help|--showpaper|--version\n", my_name); - printf ("Convert DVI or XDV intput to PDF; defaults given below.\n"); + printf ("Convert DVI or XDV input to PDF; defaults given below.\n"); printf ("\nOptions:\n"); printf (" -c \t\tIgnore color specials (for B&W printing)\n"); printf (" --dvipdfm\tEnable DVIPDFM emulation mode\n"); diff --git a/Master/texmf-dist/dvipdfmx/dvipdfmx.cfg b/Master/texmf-dist/dvipdfmx/dvipdfmx.cfg index 1832f5a9a85..490de000745 100644 --- a/Master/texmf-dist/dvipdfmx/dvipdfmx.cfg +++ b/Master/texmf-dist/dvipdfmx/dvipdfmx.cfg @@ -120,6 +120,25 @@ P 0x003C %% ps2pdf is a front-end to gs. For a complete list of options, see %% http://ghostscript.com/doc/current/Ps2pdf.htm#Options %% +%% In TeX Live, we use the rungs wrapper instead of ps2pdf, becuse we +%% must omit the -dSAFER which ps2pdf specifies: in order for pstricks +%% to work with xetex, +%% /usr/local/texlive/*/texmf-dist/dvips/pstricks/pstricks.pro (for +%% example) needs to be accessed. Also, it is better to use our +%% supplied gs on Windows. +%% +%% Without the -dEPSCROP below, an eps file with negative llx/lly (as +%% created by MetaPost, for example) fails. In 2013, changes were made +%% to the drivers xetex.def, dvipdfmx.def, etc., to handle non-zero +%% llx/lly so we could use it. The file epsf-dvipdfmx.tex is available +%% from CTAN/TL/etc. to support plain's epsf.tex. +%% +%% In 2014, we discovered that -sPAPERSIZE=a0 was needed to support +%% pstricks under xetex; otherwise, images were cropped (see thread at +%% http://tug.org/pipermail/xetex/2014-November/025664.html). +%% Happily, it seems that using both -dEPSCROP and -sPAPERSIZE=a0 +%% simultaneously works ok. So that's we do below. +%% %% By default, gs encodes all images contained in a PS file using %% the lossy DCT (i.e., JPEG) filter. This often leads to inferior %% result (see the discussion at http://electron.mit.edu/~gsteele/pdf/). @@ -130,27 +149,12 @@ P 0x003C %% will also be re-encoded using Flate. To turn the conversion off, %% simply remove the options mentioned above. %% -%% The -dEPSCROP below converts PS files. Before TL 2013, -%% -sPAPERSIZE=a0 was used for this. In 2013, changes were made to -%% xetex.def, dvipdfmx.def, etc., to handle non-zero llx/lly. -%% -%% In TeX Live, we use the rungs wrapper instead of ps2pdf, becuse we -%% must omit the -dSAFER which ps2pdf specifies: in order for pstricks -%% to work with xetex, -%% /usr/local/texlive/*/texmf-dist/dvips/pstricks/pstricks.pro (for -%% example) needs to be accessed. (Also, it is better to use our -%% supplied gs on Windows.) You can also add -dNOSAFER to the ps2pdf -%% command line. -%% %% Incidentally, especially in TL, more than one dvipdfmx.cfg may be %% extant. You can find the one that is active by running: %% kpsewhich -progname=dvipdfmx -format='other text files' dvipdfmx.cfg %% and control which one is found by setting DVIPDFMXINPUTS. %% -D "rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" - -% pre-2013 invocation using -sPAPERSIZE instead of -dEPSCrop, no other changes: -%D "rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" +D "rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit" % other random ps converters people have experimented with. %D "/usr/local/bin/ps2pdf -dEPSCrop '%i' '%o'" |