Продвинутое кодирование текста в djvu
Я бы на твоем месте сделал так: в графическом редакторе сделать все операции с картинками, а потом собрал бы в дежавю и распечатал. Еще можешь попробовать запустить под линуксом SkanKromsator -вроде все дллки с ним идут - он позволяет много чего со сканами делать. Но вот с коммандной строкой не факт, что дружит.
ЗЫ Есть еще надстройка для Соло, увеличивающая количество параметров комадной строки - SoloX_Tasker, но хз, подойдет ли в данном конкретном случае.
Операции в редакторе мне не нужны: я пишу скрипт для многостраничного сканирования, который даёт на выходе джвю-файл, поэтому мышкой делать ничего не хочется. Хочу получить тот же результат, что выходит после DjVuSolo, но из командной строки.
Тогда SoloX_Tasker, только хз, как он с линуксом дружит.
Многостраничное сканирование с параллельным кодированием в DjVu.
multiscan (запускать с 1 параметром - кол-вом сканируемых страниц):
----
#!/bin/sh
I=1
s=""
SCAN="./scan"
while [ $I -le $1 ]
do
echo "Processing page "$I
if [ $I -lt 10 ]
then
$SCAN 00$I
elif [ $I -lt 100 ]
then
$SCAN 0$I
else
$SCAN $I
fi
echo "Press ENTER if OK, any other key for rescan"
read s
if [ -n "$s" ]
then
echo "One more time"
else
I++
fi
scan (параметр - имя выходного файла без расширения):
------
#!/bin/bash
DPI=150
sudo scanimage -p -x210mm -y297mm --mode gray --resolution $DPI --depth 8 --format=pnm > $1.pnm
# мне понадобилось поднять контраст, т. к. у сканера какие-то проблемы с экспозицией
# желательно убрать, если есть возможность, т.к. занимает много времени
mogrify -contrast -contrast -contrast $1.pnm
convert -contrast $1.pnm $1.ppm
rm $1.pnm
ppmtopgm $1.ppm > tmp.pgm
pgmtopbm -threshold tmp.pgm > tmp.pbm
#Делаем маску, чтобы сказать djvumake, где фон, а где нет
#От этой операции зависит качество результата
cjb2 -clean -dpi $DPI tmp.pbm tmp.djvu
# Совмещаем маску и исходный файл
djvumake $1.djvu Sjbz=tmp.djvu PPM=$1.ppm
rm tmp.*
rm $1.ppm
Оставить комментарий
yulya
Требуется перекодировать сканы для распечатки, поэтому хотелось бы выделить текст. Я поигрался с настройками c44, попробовал другие утилиты из DjVuLibre, но не нашёл такой опции. При этом DjVuSolo (она запускается под wine) кодирует хорошо, текст становится равномерного цвета.Как решить проблему через командную строку?