Користувальницькькі налаштування

Налаштування сайту


djvu

DJVU

Формат електронних книг.

Перегляд

Створення

З окремих сторінок

Уявімо, що в нас є скановані сторінки книги, які збережені у файлах

page1.png
page2.png
...
page9.png
page10.png
...
page99.png
page100.png
page101.png
...

Для початку краще перейменувати ці файли таким чином, щоб за будь-яких умов сортування чисел вони йшли у правильному порядку.

rename page page0 page???.png
rename page page00 page??.png
rename page page000 page?.png

Перший рядок перейменує усі файли з тризнаковими номерами, другий – з двознаковими, і третій – з однознаковими. В результаті усі числа в іменах файлів будуть чотиризнакові:

page0001.png
page0002.png
...
page0009.png
page0010.png
...
page0099.png
page0100.png
page0101.png
...

Ці файли потрібно спочатку перетворити з формату PNG на формат PBM, якщо вони монохромні (тільки два кольори: чорний та білий, без проміжних градацій сірого), або в PPM в них використовується невелика кількість кольорів:

for FILE in page*png; do echo "$FILE"; convert "$FILE" "${FILE/.png/.ppm}"; done

Після цього потрібно перетворити отримані файли на DJVU-файли окремих сторінок:

for FILE in page*pbm; do echo "$FILE"; cjb2 -clean -lossy "$FILE" "${FILE/.pbm/.djvu}"; done

Параметри -clean та -lossy не є обов'язковими.

  • -clean позначає, що перед кодуванням зображення потрібно очистити від дрібних цяточок,
  • -lossy вмикає алгоритм заміни символів візуально схожими – це дозволяє, наприклад, економити пам'ять на однакових літерах.

Або для PPM-файлів:

for FILE in page*ppm; do echo "$FILE"; cpaldjvu -colors 8 -bgwhite "$FILE" "${FILE/.ppm/.djvu}"; done

Тут параметр -colors визначає максимальну кількість кольорів в палітрі. Що менше кольорів, то менший розмір файлу. -bgwhite позначає, що фоновим буде найяскравіший колір (зазвичай білий), а не переважний.

Ці два кроки перетворення формату файлів можна поєднати в одну команду:

for FILE in page*png; do echo "$FILE"; convert "$FILE" "${FILE/.png/.ppm}"; cpaldjvu -colors 8 -bgwhite "${FILE/.png/.ppm}" "${FILE/.png/.djvu}"; done

Далі треба поєднати окремі сторінки у єдиний DJVU-файл:

djvm -c book.djvu page*.djvu

Редагування

Додавання текстового шару

djvu.txt · В останнє змінено: 2020/05/09 22:44 by wombat