source: people/munepi/scripts/chkdvipdfmx.sh @ 2166

Revision 2166, 1.9 KB checked in by munepi, 14 years ago (diff)

added chkdvipdfmx.sh

  • Property svn:executable set to *
Line 
1#!/bin/bash
2#       $Id: chkdvipdfmx.sh,v 1.2 2010/10/31 07:21:49 munepi Exp $     
3
4EXTS="png jpg eps pdf"
5
6TEMP=/tmp/$(basename $0 .sh).temp
7[ -d $TEMP ] || mkdir -p $TEMP
8
9EVINCE=$(which evince 2>/dev/null) && PDFPREVIEWER=$EVINCE
10ACROREAD=$(which acroread 2>/dev/null) && PDFPREVIEWER=$ACROREAD
11DVIPDFMX=$(which dvipdfmx 2>/dev/null)
12GS=$(which gs 2>/dev/null)
13
14if [ -z "$PDFPREVIEWER" -o -z "$DVIPDFMX" -o -z "GS" ]; then
15    cat<<EOF
16E: Please install the following softwares via apt-get install:
17EOF
18    [ -z "$PDFPREVIEWER" ] && echo "evince or install-assist-AdobeReader_jpn"
19    [ -z "$DVIPDFMX" ] && echo "dvipdfmx"
20    [ -z "$GS" ] && echo "ghostscript"
21    exit 1
22fi
23
24EPS=/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
28GS="$GS -dSAFER -dBATCH -dNOPAUSE" 
29
30DIST_RELEASE=$(cat ${BUILD_ROOT}/etc/vine-release | cut -f3 -d" " | cut -f1 -d.)
31
32## genpdf [ext]
33genpdf(){
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};;
67        esac
68    else
69        target=$EPS
70    fi
71
72    ## generate embedded $target pdf
73    cat<<EOF > ${srcname}.tex
74\documentclass{jarticle}
75\usepackage[dvipdfmx]{graphicx}
76\begin{document}
77\scalebox{.5}{\includegraphics{${target}}}
78\end{document}
79EOF
80    platex ${srcname}
81    dvipdfmx -o ${srcname}-${ext}.pdf ${srcname}
82}
83
84cd $TEMP
85rm -f *
86for i in $EXTS; do genpdf $i; done
87$ACROREAD *.pdf
88cd -
89
90exit
91
92### end of file
Note: See TracBrowser for help on using the repository browser.