view makeWebGraphics.sh @ 360:01ded8741361

Use server-side includes (with Apache XBitHack setting) in web. This means that we can have one main web page, dottes.html, for each book and include the intro and tunelist to make the page. This removes the separate header and footer components. Perhaps we should use a template engine instead to generate the output. That means choosing one. And preferably one that isn't aimed only at HTML so we could use it for the printed books. More research required.
author Jim Hague <jim.hague@acm.org>
date Wed, 21 Aug 2013 10:32:50 +0100
parents b61c39beac5f
children 4cc820c7cf04
line wrap: on
line source

#!/bin/bash
#
# Make graphics required for the website but not for the book.
# They go into web/<book>.
#

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

dir=`pwd`

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

mkdir -p $builddir

# Now, for each tune, make the main tune and tune first line bitmaps.
# Do this to temp files and rename into place to make updates as
# atomic as possible.
find $booke -name "*.abc" | sort |
    while read filename
    do
        name=`basename $filename .abc`
        tmpname=${name}.tmp
        convert -density 96 $graphicsdir/${name}.pdf $builddir/${tmpname}.png
        convert -density 96 $graphicsdir/firstline-${name}.pdf $builddir/firstline-${tmpname}.png

        mv $builddir/${tmpname}.png $builddir/${name}.png
        mv $builddir/firstline-${tmpname}.png $builddir/firstline-${name}.png

        # Make the web downloadable PDF with the tune title.
        abcm2ps -E -F singletuneweb -O $builddir/$name.eps $filename
        # And make the corresponding PDF.
        epstopdf --outfile=$builddir/$name.pdf $builddir/${name}001.eps
    done