Создание и редактирование документов MS-Word на сервере Linux?

Хотите разработать серверное приложение, которое будет обрабатывать документы. Исходные документы - это в основном MS-Word 2003, 2007, то есть версия Docx для MS. Хотите, чтобы серверное приложение могло работать как в Linux, так и в Windows. Хотите знать, какой инструмент или библиотека лучше всего подходят для чтения и записи файлов MS-Word под Linux. Совместимость - это самое важное соображение. Необходимо сохранить форматирование исходного документа, включая таблицы.

Я видел подобное сообщение здесь, но это было специально для python. Меня не волнует, какой язык или библиотеки используются, если они доступны для Windows и Linux.
Не должен требовать, чтобы MS-Word читал файлы Word.
Я в курсе Open Office, но я ищу решение, которое имеет высокую степень совместимости с файлами MS-Word. Также только что наткнулся на это решение, которое выглядит многообещающим. aspose. com Кто-нибудь имел опыт использования Aspose.Words для Java или аналогичных сторонних пакетов? Это выглядит многообещающе, но стоит более 2 тысяч долларов за OEM-подписку. Тем не менее, если он работает так, как рекламируется, он все еще может быть лучшим решением.

спасибо. Было несколько предложений, но пока ничего, что подошло бы по счету (или по бюджету).


person 10ToedSloth    schedule 12.11.2009    source источник
comment
Что именно вы имеете в виду под процессом?   -  person Erich Kitzmueller    schedule 12.11.2009
comment
Добавьте теги, переформатируйте в другой стиль шаблона, экспортируйте в другие форматы. Разрешить пользователям отправлять текстовый документ, импортировать документ, сканировать документ на предмет ключевых слов, которые хранятся в базе данных сервера. Его запускать в интранете клиента   -  person 10ToedSloth    schedule 12.11.2009


Ответы (3)


Рассматривали ли вы использование b2xtranslator для преобразования двоичного .doc в .docx? (В Linux вам придется запускать его в Mono)

Затем вы можете использовать POI или docx4j для управления docx. Не решение, если вам нужно сохранить как .doc (если вы не используете OO для этого бита)

person JasonPlutext    schedule 17.11.2009
comment
b2xtranslator зависит от класса system.io.packaging .net, который mono только недавно поддержал, и я думаю, что он все еще немного нестабилен. - person Charles Stewart; 10.12.2009
comment
@CharlesStewart Я перенес его на .NET Core, что должно помочь в этом. - person Keith; 20.10.2017

Хорошо, я отвечу еще раз ;-)

Как насчет использования unaconv

Он может преобразовать любой документ, который OpenOffice может прочитать, в любой документ, который OpenOffice может написать. Вы должны иметь возможность использовать это для преобразования как в / из документов MS-Word (при условии, что они не слишком сложные, с которыми, как я обнаружил, открытый офис не может справиться очень хорошо).

Единственное предостережение: на сервере Linux должен быть запущен экземпляр OpenOffice, с которым unoconv сможет взаимодействовать.

person Benj    schedule 12.11.2009
comment
еще раз спасибо, я знал, что OO может быть одним из решений. Хотя я регулярно использую OO 3, у него есть те же проблемы, связанные со старыми двоичными файлами Word, то есть Word 97-2003. Ищем, есть ли еще доступные совместимые решения. Ваше здоровье - person 10ToedSloth; 12.11.2009

Mono недавно получил поддержку класса system.io.packaging .net, который позволяет в некоторой степени манипулировать файлами docx. Если вы хотите добавить / удалить ресурсы и рекурсивно перемещаться по тексту, это, вероятно, правильно.

person Charles Stewart    schedule 02.12.2009