gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=1-2.pdf 1.pdf 2.pdf
или по маске:
gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=myebook.pdf *.pdf
следует учитывать то, что с маской *.pdf файлы будут считаны в том порядке, в каком выдаёт результаты команда
ls -l *.pdf
разбираем pdf файл на составляющие: текст и картинки.
pdf2html filename.pdf
или
pdftohtml filename.pdf
(зависит от дистрибутива)
текст будет конвертирован в HTML файл и картинки будут сохранены в текущем директории
если pdf файл состоит только из картинок, то картинки будутавтоматически пронумерованы
вращаем кучу сосканированных страничек автоматически, с помощью скрипта:
это нужно на случай, если сканнер, который может автоматом заглатывать странички, не может их программно переворачивать.
скрипт jpegsrotate.sh
#!/bin/bash
#
# jpegsrotate
#
if [ -z `which jpegtran` ]; then
usage
echo "Error: jpegtran is needed"
echo
exit 1
fi
shopt -s extglob
DEFMASK="*.jpg"
DEFEVENMASK="*[02468].jpg"
DEFODDMASK="*[13579].jpg"
DEFDEG=270
function usage() {
echo
echo "usage:"
echo "$0"
echo " rotates files with the mask $DEFMASK by $DEFDEG degrees clockwise"
echo "$0 --even"
echo " rotates even files with the mask $DEFEVENMASK by 180 degrees"
echo "$0 --odd"
echo " rotates odd files with the mask $DEFODDMASK by 180 degrees"
echo "$0 --params \"REGEXP\" (90|180|270)"
echo " rotates files with the mask REGEXP by the given aspect ratio clockwise"
echo
}
if [ "$1" == "--even" ]; then
MASK=$DEFEVENMASK
DEG=180
elif [ "$1" == "--odd" ]; then
MASK=$DEFODDMASK
DEG=180
elif [ "$1" == "--params" ]; then
if [ -n "$2" -a -n "$3" ]; then
MASK=$2
DEG=$3
else
usage
exit 1
fi
elif [ -n "$1" ]; then
usage
exit 1
else
MASK=$DEFMASK
DEG=$DEFDEG
fi
for i in $MASK; do
if [ ! -e $i ]; then
usage
echo "Error: current directory must contain files with the mask $MASK"
echo
exit 1
fi
echo "$i"
jpegtran -rotate $DEG $i > $i.rotated
mv $i.rotated $i
done
скрипт может вращать только на 90, 180 или 270 градусов по часовой стрелке
источник скрипта: http://www.howtoforge.com/creating_djvu_documents_on_linux
Комментариев нет:
Отправить комментарий