Преобразование HTML в Microsoft Word, совместимое с CSS 2.1?

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

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
3
0
2 589
6

Ответы 6

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

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

OpenOffice можно использовать в серверном / автономном режиме для создания документов во многих форматах.

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

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

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

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

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

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

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

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

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

Другие вопросы по теме