[2166] | 1 | #!/bin/bash |
---|
[5209] | 2 | # $Id: chkdvipdfmx.sh,v 1.3 2011/11/27 11:34:46 munepi Exp $ |
---|
[2166] | 3 | |
---|
| 4 | EXTS="png jpg eps pdf" |
---|
| 5 | |
---|
| 6 | TEMP=/tmp/$(basename $0 .sh).temp |
---|
| 7 | [ -d $TEMP ] || mkdir -p $TEMP |
---|
| 8 | |
---|
| 9 | EVINCE=$(which evince 2>/dev/null) && PDFPREVIEWER=$EVINCE |
---|
| 10 | ACROREAD=$(which acroread 2>/dev/null) && PDFPREVIEWER=$ACROREAD |
---|
| 11 | DVIPDFMX=$(which dvipdfmx 2>/dev/null) |
---|
| 12 | GS=$(which gs 2>/dev/null) |
---|
| 13 | |
---|
| 14 | if [ -z "$PDFPREVIEWER" -o -z "$DVIPDFMX" -o -z "GS" ]; then |
---|
| 15 | cat<<EOF |
---|
| 16 | E: Please install the following softwares via apt-get install: |
---|
| 17 | EOF |
---|
| 18 | [ -z "$PDFPREVIEWER" ] && echo "evince or install-assist-AdobeReader_jpn" |
---|
| 19 | [ -z "$DVIPDFMX" ] && echo "dvipdfmx" |
---|
| 20 | [ -z "$GS" ] && echo "ghostscript" |
---|
| 21 | exit 1 |
---|
| 22 | fi |
---|
| 23 | |
---|
| 24 | EPS=/usr/share/ghostscript/$(gs --version)/examples/tiger.eps |
---|
| 25 | #EPS=/usr/share/ghostscript/$(gs --version)/examples/golfer.eps |
---|
| 26 | [ ! -f $EPS ] && echo "E: No such file: $EPS" && exit 1 |
---|
| 27 | |
---|
| 28 | GS="$GS -dSAFER -dBATCH -dNOPAUSE" |
---|
| 29 | |
---|
| 30 | DIST_RELEASE=$(cat ${BUILD_ROOT}/etc/vine-release | cut -f3 -d" " | cut -f1 -d.) |
---|
| 31 | |
---|
| 32 | ## genpdf [ext] |
---|
| 33 | genpdf(){ |
---|
| 34 | local ext=$1 |
---|
| 35 | local srcname=$(basename $EPS .eps) |
---|
| 36 | local target=${srcname}.${ext} |
---|
| 37 | |
---|
| 38 | local gs_dev= |
---|
| 39 | case $ext in |
---|
| 40 | eps) |
---|
| 41 | ;; |
---|
| 42 | png) |
---|
| 43 | gs_dev=pngalpha |
---|
| 44 | ;; |
---|
| 45 | jpg) |
---|
| 46 | gs_dev=jpegcmyk |
---|
| 47 | ;; |
---|
| 48 | pdf) |
---|
| 49 | gs_dev=pdfwrite |
---|
| 50 | ;; |
---|
| 51 | *) |
---|
| 52 | echo "E: unsupported extension: $ext" |
---|
| 53 | exit 1 |
---|
| 54 | ;; |
---|
| 55 | esac |
---|
| 56 | |
---|
| 57 | ## convert a target media file from $EPS |
---|
| 58 | if [ ! -z $gs_dev ]; then |
---|
| 59 | rm -f ${target} |
---|
| 60 | $GS -sDEVICE=$gs_dev -sOutputFile=${target} $EPS |
---|
| 61 | [ ! -f ${target} ] && exit 1 |
---|
| 62 | case ${DIST_RELEASE} in |
---|
| 63 | 4|5) |
---|
| 64 | ebbx -b ${target};; |
---|
| 65 | 6) |
---|
| 66 | ebbx -x ${target};; |
---|
[5209] | 67 | 7) |
---|
| 68 | ebb -x ${target};; |
---|
[2166] | 69 | esac |
---|
| 70 | else |
---|
| 71 | target=$EPS |
---|
| 72 | fi |
---|
| 73 | |
---|
| 74 | ## generate embedded $target pdf |
---|
| 75 | cat<<EOF > ${srcname}.tex |
---|
| 76 | \documentclass{jarticle} |
---|
| 77 | \usepackage[dvipdfmx]{graphicx} |
---|
| 78 | \begin{document} |
---|
| 79 | \scalebox{.5}{\includegraphics{${target}}} |
---|
| 80 | \end{document} |
---|
| 81 | EOF |
---|
| 82 | platex ${srcname} |
---|
| 83 | dvipdfmx -o ${srcname}-${ext}.pdf ${srcname} |
---|
| 84 | } |
---|
| 85 | |
---|
| 86 | cd $TEMP |
---|
| 87 | rm -f * |
---|
| 88 | for i in $EXTS; do genpdf $i; done |
---|
| 89 | $ACROREAD *.pdf |
---|
| 90 | cd - |
---|
| 91 | |
---|
| 92 | exit |
---|
| 93 | |
---|
| 94 | ### end of file |
---|