発言者: munepi
発言日: 2006 05/02 14:24
発言元: 210.139.146.139
これは「WinTpicのファイルをEPSに変換したい!」とほぼ同じ解決方法になるように思います。
最近(仕事で)WinTpicファイルをEPSに変換するfilterを作りました。
http://munepi.blog15.fc2.com/blog-entry-64.html
方法はいろいろとありますが、上記サイトのwtctoeps.shでは、
ps2epsを使っています。こんなものを使わずに、ghostscriptの
ディバイス機能だけでBoundingBoxの計算もできるでしょう。
そのようにしたければ、スクリプトを改良すればいいです。
僕は、安直に解決したかったので、ps2epsを使いました。
ちなみに、wtctoeps.shは、inputfile→outputfile方式ですが、
wtctoeps.vbsでは、複数個の処理を一気にやってくれます。
kajiさんの質問に対する解決方法としては、
(1) 上記のwtctoeps.shを以下のように改良します。
---------- emathps2eps.sh ここから
#!/bin/sh
### emathps2eps.sh ver.0.01
### based on wtctoeps.sh ver.0.02 by munepi
# Settings
NKF=nkf
SED=sed
LATEX=platex
DVIPS=dvips
#PERL=perl
PSTOEPS=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 -W ctype=EUC -e "s/"$TEMP".dvi/"$2"/" $TEMP.eps > $2
rm -f $TEMP.*
exit 0
------------------------------------ ここまで
(2) 初期設定として、# Settingsのところを適当に修正して
ください。またps2epsは、http://www.tm.uka.de/~bless/ps2eps.html
からダウンロードして、適当なディレクトリに展開するだけで
OKです。
(3) emathPsを使ってグラフだけを描くTeXファイルを作り、
(そのファイル名をfoo.texとしておきますと、)
$ emathps2eps foo.tex foo.eps
で、BBoxの入ったepsができちゃいます。個数が膨れ上がる
ようでしたら、あとはfor文でemath2eps.shを回せたよいです。
# これって同様にwtctoeps.vbsを書き直せば、Windows上でも
# 同じ問題が解決しますね!!!
# 後で、上記サイトに作って、おまけでおいておきます。
# いやemath関連だから僕のemath関連のページにでもおこうかな。
▼関連発言
│
└◆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