発言者: munepi
発言日: 2006 05/02 15:12
発言元: 210.139.146.139
No.4622にスクリプトを書くだけ書いておいて、
書いた本人がなにも実験をしないというのは、
ちょっと無責任かなと思い、ためしてみました。
その前に、No.4622のスクリプトをちょこっとだけ修正しました。
まあどうでもいい修正なんですけどね。
テスト環境は、Vine Linux 3.2ですので、以下のスクリプトで
ほぼそのままいけます。No.4622は、FreeBSDでしたので、
Vineでは、sedでひっかかってしまいました。
----- emathps2eps.sh ここから
#!/bin/sh
### emathps2eps.sh ver.0.01.1
### based on wtctoeps.sh ver.0.02 by munepi
# Settings
NKF=nkf
SED=sed
LATEX=platex
DVIPS=dvips
#PERL=perl
PSTOEPS=/home/munepi/tmp/ps2eps/bin/ps2eps
#--------------------------------------------------------------
if [ $# -ne 2 ]; then
echo "Usage: emathps2eps [inputfile.tex] [outfile.eps]"
exit 1
fi
TEMP=___emathps___tmp
$NKF --unix --euc $1 > $TEMP.tex
$LATEX $TEMP.tex
$DVIPS -D1200 $TEMP.dvi -o $TEMP.ps
#$PERL $PSTOEPS -B -g -f $TEMP.ps
$PSTOEPS -B -g -f $TEMP.ps
$SED -e "s/"$TEMP".dvi/"$2"/" $TEMP.eps > $2
rm -f $TEMP*
exit 0
--------- ここまで
サンプルで使ったtexファイルは次のファイルです。
----- test.tex ここから
\documentclass{jarticle}
\usepackage[debug]{emathPs}
\pagestyle{empty}
\begin{document}
\begin{pszahyou}[ul=8mm]%
(-2.5,2.5)(-2.5,2.5)
\zahyouMemori[g]
\end{pszahyou}
\end{document}
---------- ここまで
ここで大事なのは、\pagestyle{empty}です。
これがないと、めちゃくちゃでかい縦の長さになっちゃいます。
あとは、$ emathps2eps test.tex test.eps
でOKです。
# 上記のスクリプトだと、現状では画像1つに対して、
# 1つずつtexファイルを作らないといけませんね。
# (まあそれでもいいんですけどね、WinTpicなんか1つずつの
# ファイルですし。)
# たとえば、pszahyou環境が何をしているかを見れば、
# 1つのtexファイルに、pszahyou環境が複数
# 個あっても、それらを別々のpicture環境だけに含んだ個別
# ファイル*.emathpsなんかにして、wtctoeps.shとほぼ同じ
# スクリプトで解決なんですけどね。気が向いたら、そのfilter
# も作ってみようかな?
▼関連発言
│
└◆4621:グラフの eps 化 [kaji] 05/02 13:48
└◆4622:Re:グラフの eps 化 [munepi] 05/02 14:24
├◆4623:Re[2]:グラフの eps 化(実験) [munepi] 05/02 15:12
│└◆4625:Re[3]:グラフの eps 化(実験) [kaji] 05/02 15:29
│ └◆4629:Re[4]:グラフの eps 化(ps2epsに依存しないスクリプト... [munepi] 05/02 21:35
│ └◆4630:Re[5]:グラフの eps 化(ps2epsに依存しないスクリプ... [kaji] 05/03 18:45<-last
└◆4624:Re[2]:グラフの eps 化 [kaji] 05/02 15:22