LINUX.ORG.RU

Abiword как конвертер документов


0

1

Понадобилось перевести несколько сотен файлов в форматах .doc и .rtf в формат .odt. Libreoffice имеет встроенный мастер конвертации документов, но он почему-то хочет иметь дело только с .doc. Оказалось, что Abiword, который я зачем-то держу на своем компе, понимает команды из командной строки. Find и Abiword с ключем "-t odt" помогли расправится с оставшимися .rtf-ками. А какие еще есть способы массовой конвертации в .odt?

Ответ на: комментарий от Napitok

Как раз смотрю результаты. Форматирование действительно не сложное было. Первые несколько документов полностью идентичны оригиналу. Таблицы не повредились. Но Abiword не сохраняет в файле миниатюру первой страницы, так что в Nautilus файлы видны в виде стандартного значка, не в виде эскиза страницы, как я привык. А Libreoffice про миниатюру не забывает. Надо подумать, как это победить. Пустяк, конечно, но было бы приятно.

rbuilder
() автор топика
Ответ на: комментарий от rbuilder

Кое-где проигнорированы разрывы страницы, текст, расположенный в 2 колонки, выглядит не как в оригинале. В целом для меня в этом случае некритично. Но для документов, требующих корректного оформления, этот способ не подойдет.

rbuilder
() автор топика
Ответ на: комментарий от AITap

По описанию подходит. Только я не умею ничего делать на Python. Если сможете, подскажите, как с помощью этой библиотеки посылать команды офису?

rbuilder
() автор топика
Ответ на: комментарий от rbuilder

К сожалению, я и сам не очень-то знаю Python.
В комплекте есть скрипт-образец - конвертер ODF в PDF.

Что интересно, в его начале есть комментарий:
# This is just a sample script for openoffice-python. If you are
# looking for a converter which supports more formats, you may have a
# look at <http://www.artofsolving.com/opensource/pyodconverter>
# (which does not use openoffiec-python).

Это, наверное, должно подойти.

AITap ★★★★★
()
Ответ на: комментарий от AITap

Получилось!

Итак:

1) качаем http://www.artofsolving.com/files/DocumentConverter.py

2) запускаем Libreoffice как сервис:

soffice -accept=«socket,port=8100;urp;»

3) Конвертируем:

python DocumentConverter.py test.rtf test.odt

Спасибо, AITap! Осталось скормить это find'у.

rbuilder
() автор топика
Ответ на: комментарий от Napitok

Libreoffice однозначно лучше сохранил оригинальное форматирование. Однако Abiword может это делать удобно и быстро без дополнительных примочек на Python или чем-то еще. Разработчики молодцы, что предусмотрели эту удобную функцию.

rbuilder
() автор топика
Ответ на: комментарий от rbuilder

Спасибо за информацию - это может быть очень полезно!

Napitok ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.