Повернуть определенные страницы в файл DJVU?
Я хочу вращать определенный диапазон страниц в файле DjVu. Как мне это сделать? Надеюсь, без потери качества. DJVU имеет OCR, и я хотел бы сохранить это также.
2 ответа
Вы можете вращать страницы DJVU, используя djvused
Скачать и установить
- Вы можете скачать исходное программное обеспечение forge djvu здесь
-
INSTALL
В файле указано, как выполнить установку. - Пакет включает в себя
djvused - Multi-purpose DjVu document editor
как часть каталога инструментов и его справочной страницы
Использование djvused для вращения страниц djvu
Страница руководства djvu sourceforge предлагает следующее:
Разные команды
вращение набора [+-] гниль
Изменяет ориентацию по умолчанию для выбранных страниц. Ориентация выражается в виде целого числа в диапазоне 0..3, представляющего количество поворотов против часовой стрелки на 90 градусов. Когда аргументу предшествует знак + или -, аргумент rot подсчитывает, сколько дополнительных поворотов на 90 градусов против часовой стрелки следует применить к странице. В противном случае аргумент rot представляет желаемую абсолютную ориентацию страницы. Только страницы DjVu могут быть повернуты.
ОПЦИИ
-e command
Вызывает djvused для выполнения команд, указанных в командах параметров аргумента. Рекомендуется заключать команды djvused в одинарные кавычки, чтобы предотвратить нежелательное расширение оболочки.
Команды выбора
select [fileid]
Выберите файл компонента, идентифицируемый аргументом fileid. Аргумент fileid должен быть либо номером страницы, либо идентификатором файла компонента. Команда select выбирает все файлы компонентов, если аргумент fileid опущен.
Вы можете попробовать следующую команду в качестве отправной точки, она должна:
- выберите страницу 5
- повернуть его на 180 градусов
сохраните его в новом файле djvu - p05.djvu
djvused myfile.djvu -e 'выберите 5; установка вращения +2; сохранить страницу p05.djvu'
Загрузите и установите djvused (сравните ответ Ярона).
Повернуть отдельную страницу
Чтобы повернуть отдельную страницу на 180° в файле DJVU, используйте
djvused myfile.djvu -e 'select 5; set-rotation +2 ; save'
( а также
set-rotation
объясняются в ответе Ярона или на странице руководства djvused .)
Повернуть несколько страниц
Чтобы повернуть диапазон страниц, вы можете запустить следующий цикл в терминале или скрипте:
for i in {4..8}
do
djvused myfile.djvu -e "select $i; set-rotation +2; save"
done
куда
{4..8}
обозначает диапазон от 4 до 8, но вы также можете указать числа явно:
for i in 4 5 6 8
, если не все подряд. Вы даже можете комбинировать оба:
for i in {4..8} 15 {21..40}
.
Поворот большого количества страниц
Если вы чередуете большое количество страниц, вы можете сэкономить время, избегая повторяющихся команд. Для этого вы можете использовать
echo
написать
select $i; set-rotation +2
команды в текстовый файл (если
command-list
существует, это удалит/заменит его содержимое!):
> command-list # make command-list empty
for i in {4..8}
do
echo "select $i; set-rotation +2" >> command-list
done
проверьте, что файл содержит правильные команды, а затем примените все сразу:
djvused myfile.djvu -s -f command-list
Здесь,
-s
заменяет
save
команда и
-f
принимает файл, содержащий список команд (вместо явных команд после
-e
).