view makeGraphics.sh @ 303:67dc98ae4816

Crop PDFs after generation so that they don't have white borders - document can do that.
author Jim Hague <jim.hague@acm.org>
date Sun, 07 Jul 2013 20:27:27 +0100 (2013-07-07)
parents 295ba8275ab4
children aa803fd1c3a6
line wrap: on
line source
#!/bin/bash
#
# Make the tune graphics, EPS, PDF required by web and book into
# graphics/<book>.
#

if [ $# != 1 ]; then
    echo "Usage: makeGraphics.sh <book dir name>"
    exit 1
fi

dir=`pwd`

booke=$dir/$1
graphicsdir=$dir/graphics/$1

mkdir -p $graphicsdir

# Now, for each tune, make the tune graphic.
find $booke -name "*.abc" | sort |
    while read filename
    do
        name=`basename $filename .abc`

        # Make the tune graphic.
        abcm2ps -E -F singletune -O $graphicsdir/$name.eps $filename
        # Make $name.eps so we can build with LaTeX.
        mv $graphicsdir/${name}001.eps $graphicsdir/${name}.eps
        # And make the corresponding PDF.
        epstopdf --outfile=$graphicsdir/$name-tocrop.pdf $graphicsdir/${name}.eps
        # And crop it, so the graphic is as big as possible on the page.
        pdfcrop $graphicsdir/$name-tocrop.pdf $graphicsdir/$name.pdf
        rm $graphicsdir/$name-tocrop.pdf

        # and make the first line graphic.
        $dir/abcfirstline.py $filename > firstline.abc
        abcm2ps +c -M +Q -E -O $graphicsdir/firstline-$name.eps firstline.abc
        mv $graphicsdir/firstline-${name}001.eps $graphicsdir/firstline-${name}.eps
        rm firstline.abc
        epstopdf --outfile=$graphicsdir/firstline-$name-tocrop.pdf $graphicsdir/firstline-${name}.eps
        # And crop it, so the graphic is as big as possible on the page.
        pdfcrop $graphicsdir/firstline-$name-tocrop.pdf $graphicsdir/firstline-$name.pdf
        rm $graphicsdir/firstline-$name-tocrop.pdf
    done