Мне нужно сохранять HTML-документы в памяти как файлы Word .DOC.
Может ли кто-нибудь дать мне ссылки на библиотеки с закрытым и открытым исходным кодом что я могу использовать для этого?
Кроме того, я должен отредактировать этот вопрос, чтобы добавить язык, который я использую, чтобы сузить выбор.
Попробуйте использовать pandoc
pandoc -f html -t docx -o output.docx input.html
Если формат ввода или вывода не указано явно, pandoc попытается угадать это по расширению имен файлов ввода и вывода.
— pandoc manual
Таким образом, вы даже можете использовать
pandoc -o output.docx input.html
-
Это очень хорошо работает. Так же просто, как sudo apt-get install -y pandoc (в Ubuntu) — Alejo Dev, 14 августа 2015 г., 16:08
-
Я согласен, что на самом деле это хорошее решение, если вам нужно немного больше, чем предлагает MS Word — это также дает вам общую цель инструмент для использования в других местах (например, преобразование из HTML в PDF и т. д.). Говоря, что для действительно простого варианта предложение, которое предложил d4nt, тоже работает 🙂 — Антон Бабушкин, 3 мая 2016 г., 6:30
-
в моем случае это не работает — Бералив, 13 декабря 2016, 19:54
-
1Не могли бы вы уточнить это, @ Бералив. Получаете ли вы сообщения об ошибках от pandoc? Word не может открыть документ? — 16 янв. Дек. ’16 в 21:52
-
@Jan Хорошо, извините за без объяснений. Я попытался выразить, что трансформация не идеальна: я не могу преобразовать формулы правильно (я имею в виду все формулы), стиль становится хуже, чем я ожидал, а текст где-то выглядит ужасно (смещения, шрифт и т. . И да, мне нужно многое. — Бералив 17 дек. ’16 в 22:43
Попробуйте использовать pandoc
pandoc - f html -t docx -o output.docx input.html
Если формат ввода или вывода не указан явно, pandoc попытается угадать его из расширения имен файлов ввода и вывода.
— pandoc manual
Таким образом, вы даже можете использовать
pandoc - o output.docx ввод. html
только что прошедший это в заголовке вашей php-страницы. перед любым кодом должен быть верхний код.
phpheader ("Content-Type: application/vnd.ms-word"); заголовок ("Истекает: 0"); заголовок ("Cache-Control: обязательная повторная проверка, пост-проверка = 0, предварительная проверка = 0"); header ("content-disposition: attachment; filename = Hawala.doc");?>
это преобразует весь HTML в MSWORD, теперь вы можете настроить его в соответствии с требованиями вашего клиента .

-
1Это лучше всего, если вы используете php — mintedsky 23 ноя 2016, 16:17
-
2Однако не ограничивается PHP. Word может открывать HTML-содержимое в файле doc, но не в файле docx. Хотел бы я знать это до того, как потратил время, пытаясь на самом деле преобразовать это различными способами. — Стив Хайнер, 7 фев. 2017, в 19:32
-
Обратите внимание, что поддержка CSS ненадежна, и вы можете получить или не получить желаемые «редактируемые» результаты. — Драгас 11 апр. ’19 в 15:12
просто вставьте это в заголовок вашей php-страницы. перед любым кодом должен быть верхний код.
phpheader ("Content-Type: application/vnd.ms-word"); заголовок ("Истекает: 0"); заголовок ("Cache-Control: обязательная повторная проверка, пост-проверка = 0, предварительная проверка = 0"); header ("content-disposition: attachment; filename = Hawala.doc");?>
это преобразует весь HTML в MSWORD, теперь вы можете настроить его в соответствии с требованиями вашего клиента .
При этом я нашел это проще всего:
- Посетить страницу в веб-браузере
- Сохранить страницу с помощью веб-браузера с расширением .htm (и, возможно, папку с файлы поддержки)
- Запустите Word и откройте сохраненный htm-файл (Word откроет его правильно)
- Внесите любые изменения, если необходимо.
- Выбрать Сохранить как и затем выбрать расширение, которое вы хотите doc, docx и т. Д..
-
Я думаю, что этот ответ лучше, чем переименование, но это только я 🙂 — yossico 3 августа 2015 г., 17:45
-
Если вам нужно истинное преобразование, вы можете попробовать API HTML в DOCX, например: grabz.it/html-to-word- docx-api.aspx — user1474090 05 июн., 2017 в 16:09
При этом я обнаружил, что проще всего:
- Посетить страницу в веб-браузер
- Сохраните страницу, используя веб-браузер с расширением .htm (и, возможно, папку с файлами поддержки).
- Запустите Word и откройте сохраненный htm-файл (Word будет откройте его правильно)
- Внесите любые изменения, если необходимо.
- Выберите «Сохранить как», а затем выберите расширение, которое вы хотите doc, docx и т. д.
Хорошим вариантом является использование API, например Доквертер. Docverter позволит вам конвертировать HTML в PDF или DOCX с помощью API.

-
13Вы забыли закончить ответ? — Тайлер Кромптон, 15 января 2013, 16:45
-
3Несмотря на то, что ответ еще не закончен, imo Docverter по-прежнему оказался наиболее полезной информацией с этой страницы 🙂 — Оуэн 17 ноября 2014 г., 13:20
Хороший вариант — использовать API, например Docverter. Docverter позволит вам конвертировать HTML в PDF или DOCX с помощью API.
Другие альтернативы от простого переименования файла в .doc …..
http://msdn.microsoft.com/en-us/library/microsoft. office.interop.word (office.11) .aspx
Вот хорошее место для начала. Вы также можете попробовать использовать этот Office Open XML.
http://www.ecma-international.org/publications/standards/Ecma-376. htm
-
1docx4j-ImportXHTML использует этот подход. Код Java, также доступный в среде .NET. — JasonPlutext 06 мар. ’14 в 8:31
Другие альтернативы от простого переименования файла в .doc …..
http:// msdn.microsoft.com/en-us/library/microsoft.office.interop.word(office.11).aspx
Вот хорошее место для начала. Вы также можете попробовать использовать этот Office Open XML.
http://www.ecma-international.org/publications/standards/Ecma-376.htm
Конвертировать веб-страницу в документ Word
Это лучший способ, который я нашел для преобразования HTML-страницы в файл Word docx
. Вы можете использовать этот подход, если вам нужна версия Word любой веб-страницы.
1. Сохраните веб-страницу как HTML
Перейдите на страницу, которую вы хотите преобразовать. Откройте меню в браузере и выберите Сохранить страницу как… (или используйте Ctrl + S) и сохраните ее где-нибудь на своем компьютере.
2. Откройте веб-страницу в Word
Теперь у вас должен быть файл .htm
или .html
. Щелкните этот файл правой кнопкой мыши и выберите Открыть с помощью .. | Microsoft Word .
3. Сохранить как DOCX
Перейдите в меню «Файл» и выберите Сохранить как… . Измените тип файла на .docx и сохраните. (Если вы видите диалоговое окно с информацией, просто нажмите ОК).
4. Встраивать изображения
Если документ содержит изображения, эти изображения могут быть только связаны. Обычно вы хотите, чтобы все изображения были встроены в документ Word.
Перейдите в Меню файла и выберите Информация . . Если есть связанные изображения, вы должны увидеть значок ссылки справа. Нажмите Изменить ссылки на файлы .
В диалоговом окне выберите все изображения, которые вы хотите встроить в список (используйте клавишу Shift для выбора нескольких изображений).
Нажмите кнопку Разорвать ссылку , а затем ОК. Все ссылки удаляются, а изображения вставляются в документ.
5. Очистка
Мы можем немного очистить, чтобы избавиться от нежелательных элементов. Просто удалите навигацию, логотип веб-сайта и т. Д.
Веб-страница обычно открывается в Просмотр веб-макета в Word. Измените на «нормальный» вид макета для печати , чтобы увидеть, как он поместится на печатных страницах.
После некоторой верстки у вас должен получиться довольно хороший текстовый документ веб-страницы.
Примечание. Заголовок Стили применяются автоматически, поэтому вы можете просто изменить Стили , и они будут применены ко всем заголовкам.