Соответствует ли CSS 2.1 конвертации HTML в Microsoft Word? - PullRequest
3 голосов
/ 23 января 2009

Я нашел превосходный конвертер HTML в PDF в Prince XML . Сейчас я ищу что-то похожего качества для создания документов Word из HTML + CSS. Это на PHP / Linux.

Ответы [ 6 ]

2 голосов
/ 19 февраля 2009

Три варианта в зависимости от того, что вам нужно сделать:

  1. Для простых случаев вы можете просто записать HTML в файл .doc. Образец здесь . Это ограничено, однако, и предлагает пользователю сохранять в формате HTML, если они делают обновления.

  2. Если вам требуется Word 2007, вы можете сгенерировать Office Open XML, который в основном представляет собой zip-файл, содержащий XML-документы. Я не нашел библиотеки, которая могла бы сделать это, но вы можете начать, переименовав образец файла .docx в файл .zip и посмотрев, что включено, а затем сгенерировать его из PHP. Некоторая информация об этом в этом вопросе SO .

  3. Если вам нужна поддержка Word 2003, вам нужно работать с форматом XML Word 2003. Он отличается от формата 2007 года, но, по крайней мере, совместим с прямой версией (поэтому он будет работать и в 2007 году). Самый простой способ - сохранить как документ Word 2003 XML из Word, затем открыть документ в текстовом редакторе, а затем приступить к написанию XSLT, который преобразует ваш HTML в правильный XML. Я сделал это, и это сработало, но это было много работы. Информация о формате здесь .

Все это не так просто, так что, возможно, стоит купить программный продукт, который сделает преобразование за вас.

Более подробная информация по этому вопросу доступна также в этом SO-вопросе .

1 голос
/ 28 января 2009

OpenOffice можно использовать в режиме «сервер / без головы» для создания документов в большом количестве форматов.

0 голосов
/ 17 февраля 2009

Я должен был сделать это несколько лет назад и в итоге развернул свое собственное решение. Я создал документ Word в нужном формате, сохранил его в формате HTML, а затем добавил код, где это необходимо для извлечения текста из базы данных и форматирования так, как это нравится MS Word. Я заставил заголовок заставить клиента думать, что он получает документ Word вместо файла HTML. Microsoft Word счастливо открыл файл, как будто это был обычный документ Word.

Если бы вместо этого было возможно вывести файл DOCX, вы могли бы сделать XSL-преобразование.

0 голосов
/ 01 февраля 2009

Здесь является одной из альтернатив для pdf => doc. Не пробовал, удачи!

0 голосов
/ 28 января 2009

Возможно, вы захотите попробовать отправить HTML-файл в формате DOC (аналогично тому, как это описано текст ссылки , но с соответствующим заголовком Contet-Type :-)) и позволить системе конечного пользователя выполнить преобразование (AFAIK вы можете сделать что-то подобное с Excel тоже).

0 голосов
/ 23 января 2009

Вместо этого может быть проще найти PDF -> DOC конвертер, если у вас уже есть половина решенной проблемы. Тем не менее, я не знаю ни одного хорошего PDF -> DOC конвертеры либо: (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...