2004/12/10

epsを拡大縮小したい。そんなの組版ソフト側で処理すればいいじゃんと思うけど、でもちょっと必要だったのさ。こんなんconvertでできればいいのに(もしかして自分が知らないだけで、実はできるのかも)。それでTeXにやらせてみた。

#! /bin/sh
# ./rseps.sh -per 0.5 foobar.eps

PERCENTILE=""
FNAME=""

while [ $# -gt 0 ]; do
case "$1" in
-per) PERCENTILE="$PERCENTILE $2"; shift;;
*) FNAME=$1;;
esac
shift
done

IMAGETEX=${FNAME%eps}tex

echo '\documentclass{article}' >> $IMAGETEX
echo '\usepackage{graphicx}' >> $IMAGETEX
echo '\begin{document}' >> $IMAGETEX
echo '\thispagestyle{empty}' >> $IMAGETEX
echo '%\parindent0cm' >> $IMAGETEX
echo "\resizebox{!}{!}{\includegraphics*[][scale=$PERCENTILE]{../$FNAME}}" >> $IMAGETEX
echo '\end{document}' >> $IMAGETEX

mkdir imagetex
mv $IMAGETEX imagetex/$IMAGETEX
cd imagetex

platex $IMAGETEX > /dev/null 2> /dev/null
dvips -q -E -Z* ${IMAGETEX%tex}dvi -o ${IMAGETEX%tex}eps
/bin/rm -f ${IMAGETEX%tex}log ${IMAGETEX%tex}dvi ${IMAGETEX%tex}aux

しかし、実は実行結果に大きな問題がある。たとえば、dvipsでEPSで吐き出したページを縮小したいというとき(これが本来の使い道だったんだけど)、縮小されたepsにはもとのepsのページ左下が参照点として残ってしまう。お気楽だね。

0 件のコメント: