view makeGraphics.sh @ 748:ce5c7214f9aa

Introduce mechanism for having different tune images for compact printed output. Sort alternate .abc in subdir 'Compact' under the booke dir. Use that as the graphic for A5 output, assuming it will be vertically more compact. Use Bear Dance as an example, as it has commentary that currently overflows an A5 landscape page. For the moment, transposed Bookes don't transpose and so don't use Compact.
author Jim Hague <jim.hague@acm.org>
date Fri, 13 Oct 2017 15:44:15 +0100
parents aa803fd1c3a6
children b83b49f2a0a0
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 -depth 1 -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 -E -F firstline -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

# And make any compact tune graphics.
if [ ! -d ${booke}/Compact ]; then
    exit
fi

find ${booke}/Compact -depth 1 -name "*.abc" | sort |
    while read filename
    do
        name=`basename $filename .abc`

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