DjVu/Weiterführende Informationen
Zur Navigation springen
Zur Suche springen
Script zum Konvertieren vom Bildern
<bash>#!/bin/sh
- This script helps to convert images into DjVu files.
- OPTIONS
- -s <N> scale factor for mkbitmap (default=2)
- -d create a darker results by combining high-pass filtered image
- with a simple by thresholding created bi-tonal image
- -c try to preserve the color of the background (currently results have low quality)
- You need these Debian/Ubuntu packages to use the script:
- sudo apt-get install djvulibre-bin imagemagick mktemp netpbm potrace
scale="-s2"
while getopts "dcs:" opt do
case "$opt" in s) scale="-s"${OPTARG};; d) doubledjvu=1;; c) color=1 esac
done shift $(($OPTIND - 1))
- make sure that the file exists
if [ -f "$1" ] then
image=`basename "$1"` image=`echo -n "$image" | sed 's/\.[a-zA-Z]*$//'`
else
echo 1>&2 "Image $1 does not exist." exit 1
fi
TEMPDIR=`/bin/mktemp -d`
if [ $color ] then
# a color background implies "-s 1" scale="-s1"
fi
image=`basename "$1"` image=`echo -n "$image" | sed 's/\.[a-zA-Z]*$//'`
PPM=$TEMPDIR/image.ppm PBM=$TEMPDIR/bw.pbm
- convert image (any format) into PPM
/usr/bin/convert "$1" "$PPM"
if [ $doubledjvu ] then
# A "double DjVu" is an overlay two parts: # the (usual) highpass filtered image # an only by thresholding created bitonal image /usr/bin/mkbitmap $scale -n $PPM -o "$TEMPDIR/a.pbm" /usr/bin/mkbitmap $scale $PPM -o "$TEMPDIR/b.pbm" /usr/bin/pnmarith -multiply "$TEMPDIR/a.pbm" "$TEMPDIR/b.pbm" > $PBM
else
# make bitonal PBM image /usr/bin/mkbitmap $scale $PPM -o $PBM
fi
- encode the PBM image into DjVu
/usr/bin/cjb2 -lossy $PBM "$image.djvu"
- some special treatment in case of a color background
if [ $color ] then
MASK=$TEMPDIR/mask.djvu mv "$image.djvu" $MASK /usr/bin/djvumake "$image.djvu" Sjbz=$MASK PPM="$PPM"
fi
rm -rf "$TEMPDIR" </bash>
Test
Ein Test mit 227 Seiten aus dem Amtsblatt Schleswig 1870. Es handelt sich um farbige Fotografien, die als jpg-Dateien der Größe 1600x1200 Pixel vorliegen.
Art der Datei Gesamtgröße (MB) jpg 111 DjVu sw 15 DjVu Farbe doppelte Auflösung 29 DjVu Farbe 9,8