Как преобразовать формат word в формат xml

Обновлено: 21.11.2024

Вот моя проблема: моя организация хочет загрузить текстовые документы от пользователей на сервер. На стороне сервера текстовый документ (со стилями) необходимо преобразовать в файлы формата XML. Затем мне нужно использовать php для анализа файлов открытых форматов xml и помещения содержимого в базу данных. Кто-нибудь знает, как автоматически конвертировать слово в XML на стороне сервера? Есть ли какой-либо API или примеры кодов для php для анализа форматов Open XML? Ваши предложения приветствуются.

Более новые версии Word (.docx) и формат OpenOffice.odt уже являются XML. Переименуйте один из них в .zip и посмотрите

Спасибо, @Pekka웃, я попробовал сохранить *.xml как вариант, но он генерирует много кода xml для простого документа Word, который включает все шрифты и другие свойства слова.

Нет, я имею в виду, что родной формат docx представляет собой ZIP-файл, содержащий XML-данные. Возможно, оттуда вы сможете извлечь свои данные.

Это нормально, но нам нужно переименовать файл вручную. есть ли какой-либо автоматизированный процесс .. фактическое требование объясняется в вопросе. Пользователь будет загружать файлы документов на сервер. серверный скрипт должен преобразовать его в формат xml, и файл xml будет проанализирован в соответствии со схемой xsd.

1 Ответ 1

Вы пробовали использовать VBA?

Мне приходилось выполнять аналогичную работу, и я использовал VBA в файле WSF или VBS. Если ваш сервер находится в среде Windows, он будет работать прямо из ОС. Вы можете выполнить это из PHP (не рекомендуется) или поместить файл Docx в горячую папку за пределами среды веб-сервера. Я рекомендую последнее, так как веб-сервер env. может вызвать проблемы с безопасностью.

Еще одно замечание: если вы хотите отделить содержимое от стиля, вам потребуется выполнить некоторую постобработку выходной разметки. Word — это «текстовый» процессор, поэтому стилизация — это то, для чего он предназначен. Если это необходимо, я бы предложил вместо этого перейти на структурированный инструмент разработки на основе XML.

Надеюсь, это поможет!

Не тот ответ, который вы ищете? Просмотрите другие вопросы с тегами php xml xslt ms-word или задайте свой вопрос.

Связано

Связанные

Горячие вопросы о сети

Чтобы подписаться на этот RSS-канал, скопируйте и вставьте этот URL-адрес в программу для чтения RSS.

дизайн сайта / логотип © 2022 Stack Exchange Inc; вклады пользователей под лицензией cc by-sa. версия 2022.3.22.41738

Вы можете конвертировать doc-файл в xml, а также во множество других форматов с помощью бесплатного онлайн-конвертера.

Как конвертировать doc в xml?

Загрузить doc-файл

Выберите файл документа, который вы хотите преобразовать, с вашего компьютера, Google Диска, Dropbox или перетащите его на страницу.

Конвертировать документ в xml

Загрузите свой xml-файл

Онлайн и бесплатный конвертер документов в xml

Просто перетащите файлы doc на страницу, чтобы преобразовать xml, или вы можете преобразовать его в более чем 250 различных форматов файлов без регистрации, указывая адрес электронной почты или водяной знак.

Мы мгновенно удаляем загруженные файлы doc и преобразуем файлы xml через 24 часа. Все файлы передаются с защищенным расширенным уровнем шифрования SSL.

Вам не нужно устанавливать какое-либо программное обеспечение. Все преобразования doc в xml выполняются в облаке и не используют ресурсы вашего компьютера.

Документ Microsoft Word

Расширение файла DOC — это двоичный формат файла, встроенный в приложение для обработки текстов Microsoft. По сути, это формат документа для обработки текстов, который поддерживает обычный текст, гиперссылки, выравнивание, изображения и многое другое.

Когда-то DOC был самым популярным форматом документов Microsoft для обработки текстов. Однако его популярность угасла после появления DOCX. Тем не менее, вы по-прежнему можете использовать DOC для создания, редактирования и сохранения файлов документов. DOC также широко используется на различных платформах. Код и структура делают акцент на шрифте, размере, форме и цвете текста.

Как создать и открыть файл DOC

Для создания файла DOC требуется приложение Microsoft, например Word. Просто запустите приложение, выберите «Файл», затем «Новый», затем «Пустой документ» или создайте с помощью шаблона. Вы также можете создать файл DOC в Документах Google. Многие платформы поддерживают файлы DOC, поэтому все, что вам нужно сделать, это создать текстовый файл и сохранить его или загрузить как файл DOC.

Существует множество способов открыть файл DOC. Он поддерживается многими платформами и программами, начиная с набора приложений Microsoft, таких как Word и WordPad. Вы также можете открывать файлы DOC в Интернете с помощью Microsoft OneDrive или любой другой программы, поддерживающей это расширение. Все модули записи LibreOffice, WPS Office и OpenOffice поддерживают файлы DOC, поэтому вы можете использовать их для создания, сохранения и открытия файлов с расширением DOC.

В какие другие форматы можно конвертировать DOC и почему

Вы можете конвертировать файлы DOC в различные форматы в зависимости от используемой программы. Некоторые из популярных форматов файлов, в которые можно преобразовать DOC, включают:

Преобразование файлов имеет неоценимое значение при работе с различными программами, а DOC преобразуется в различные форматы, что позволяет создателям и обычным пользователям создавать, сохранять, открывать и редактировать с помощью самых разных приложений. Например, преобразование DOC в DOCX улучшает управление данными и их восстановление, а также расширяет возможности прежних двоичных файлов. С другой стороны, преобразование в PDF обеспечивает безопасное хранение данных и упрощает преобразование бумажных документов в цифровые.

Файлы DOC легко конвертировать. Вы также можете вернуть свой файл, преобразовав DOCX, PDF и другие документы в DOC. Все зависит от того, чего вы хотите достичь, и программы, которую вы используете. Некоторые программы не могут экспортировать или сохранять файлы DOC, поэтому вам необходимо преобразовать документ в совместимый формат, прежде чем использовать его в приложении.

Многие компании начинают создавать свою документацию в Word, и это хорошо подходит для небольших руководств. Но со временем, по мере того, как продукты меняются и растут, небольшие руководства внезапно становятся сотнями страниц, и управлять ими становится все труднее. На этом этапе компании ищут другие решения, такие как переход с Word на документацию на основе XML.

Structured FrameMaker — популярный редактор XML. Но для этого перехода требуются знания, дисциплина и внимание к деталям.

Шаг 1. Используйте стили в Word

Единственный способ сохранить контроль над документами Word — это использовать стили. Стили необходимы для технической документации, где важны точность и согласованность. Следование руководству по стилю экономит время, потому что авторам не нужно ломать голову над тем, какой стиль использовать. Однако непоследовательное использование стилей часто происходит в документах, которые развивались с течением времени или были написаны несколькими техническими писателями, которые применяли разные стили.

Чтобы управлять документами Word, определите руководство по стилю и последовательно применяйте стили. Документы, отформатированные таким образом, облегчают переход на XML.

Шаг 2. Преобразование документов Word в формат FrameMaker

Теперь, когда вы последовательно применили стили к документам Word, создайте те же стили — с теми же именами — в шаблоне FrameMaker. Настройка одинаковых стилей в FrameMaker позволяет легко импортировать содержимое Word в FrameMaker.

В результате вы получаете неструктурированные, единообразно отформатированные документы FrameMaker.

Шаг 3. Сопоставьте стили с элементами XML

Чтобы преобразовать неструктурированные документы FrameMaker в XML, сначала необходимо решить, какое определение типа XML-документа (DTD) использовать. Принятие этого решения требует глубоких знаний XML. Например, хотите ли вы использовать DITA, DocBook, PI-Mod или настраиваемый DTD?

После того, как вы решите, какой DTD или схему использовать, вы должны сопоставить свои стили FrameMaker с элементами XML. FrameMaker предоставляет встроенный инструмент таблиц преобразования для создания структурированных документов из неструктурированных документов. Например, на основе сопоставления стиль «Заголовок 1» преобразуется в элемент XML. Если вы используете правильную последовательность, таблицы преобразования могут обрабатывать даже более сложные сопоставления, такие как списки внутри других списков.

С помощью таблиц преобразования вы можете просто создавать XML-документы на основе стилей.

Шаг 4. Преобразование в XML

Вы почти у цели. Используя таблицы преобразования и несколько щелчков мыши, вы переносите документы Word в XML. В идеале, поскольку исходный документ Word был правильно отформатирован с использованием стилей, последующее редактирование XML-файлов практически не требуется. Однако вам придется переопределить перекрестные ссылки и ссылки на изображения. Вы также можете использовать сценарии XSLT для автоматизации постредактирования.

Этот четырехэтапный процесс позволяет легко и безопасно преобразовывать документы в XML.

Когда MS Word является неотъемлемой частью вашего рабочего процесса документации.

Даже после того, как вы перейдете к созданию документации в формате XML, вы все равно можете получать новый контент от экспертов в данной области в формате MS Word. Нет проблем!

Если поставщики содержимого используют стили, соответствующие вашим стилям XML, вы можете использовать тот же процесс преобразования. Чтобы обеспечить согласованное форматирование, ваша компания может принудительно использовать общие шаблоны Word, которые ограничивают стили теми, которые могут быть преобразованы в XML.

Пример. Группа разработки программного обеспечения использует ограничительные шаблоны Word для документирования запросов на изменение. Группа технического письма обрабатывает эти документы с помощью таблиц преобразования.

Таким образом, вы можете использовать этот процесс преобразования как для однократной миграции, так и для повторяющихся преобразований.

30 декабря 2003 г.

Среди наиболее часто задаваемых вопросов по XML есть вопросы о том, как обрабатывать XML с помощью клиентского приложения, с которым спрашивающий уже знаком. Большая часть этих вопросов, в свою очередь, сосредоточена на достоинствах XML как открытого носителя структурированных данных: «Как мне использовать XML в базе данных?» например, или "Как преобразовать XML-документ в электронную таблицу Excel (или наоборот)?"

Однако, учитывая его корни в SGML и HTML, XML так же хорошо работает как открытый, структурированный-документ. Отсюда и вопрос этого месяца.

Примечание. Я не претендую на то, что мой ответ является окончательным или энциклопедическим. Он охватывает только одно решение среди множества альтернатив. Если ответ на прошлые столбцы такого рода является каким-либо показателем, в течение недели или двух вы сможете найти многочисленные комментарии читателей в конце статьи, которые подскажут вам другие варианты.

В: Как преобразовать документ Microsoft Word в XML?

A: В последних версиях Word заявлены те или иные функции "сохранения в формате XML". Может быть, это «притязание» слишком резко; в конце концов, они действительно создают правильно сформированные XML-документы. Но это XML поразительно отвратительной формы, даже для простых документов — почти такой же корявый и непроницаемый для человеческого глаза, как XSL-FO.

(Хорошее представление о том, чего ожидать, см. в недавней статье А. Рассела Джонса на сайте devx.com «Экспорт настроенного XML из Microsoft Word с помощью VB.NET». Не беспокойтесь, если вы не знаете или не заботитесь что-нибудь о VB.NET, просто взгляните на рисунок 1 в этой статье, на котором показано, как документ выглядит в Word, а также на его листинг 1. Последний результат — результат документа, полученного с помощью функции Word 2003 «сохранить как XML». .)

Вне зависимости от того, нравится вам Word или нет, или вы используете его в своей повседневной работе, в какой-то момент вам может потребоваться преобразовать документ Word в XML. И если у вас вообще нет Word, качество вывода текстового процессора «сохранить как XML» в любом случае является спорным. Что тогда делать?

Если вы уверены, что программное обеспечение для обработки XML должно существовать, но не знаете, где его найти, хорошим местом для начала поиска является xmlsoftware.com. В этом случае используйте меню сайта, чтобы найти страницу «Инструменты преобразования».

upCast: Word в RTF в XML

Во-первых, давайте разберемся с вопросами о платформах и лицензиях. upCast основан на Java и поэтому доступен для разных платформ с установщиками для Windows, Unix и Mac. Лицензирование предоставляется в различных вариантах, включая (среди прочего) коммерческий продукт, бесплатную ознакомительную версию и «частную» (однопользовательскую, некоммерческую) версию.

После установки upCast и просмотра его документации (и сайта Infinity Loop) вы обнаружите, что его поддержка файлов .doc ограничена в одном смысле: рассматриваемые файлы .doc должны быть созданы с использованием Word 97. (или новее), на ПК под управлением Windows 95, 98, NT или 2000. Для других, более ранних версий Word и/или Windows документ сначала необходимо сохранить в формате RTF; затем файл RTF передается в процесс преобразования upCast. Это ограничение не должно быть проблемой для большинства пользователей Windows, но об этом следует помнить.

Поддержка .doc основана на еще одном требовании: она использует надстройку WordLink, поставляемую с upCast; эта надстройка сохраняет двоичный файл .doc как временный файл RTF, используя копию Word, установленную на компьютере пользователя. Таким образом, WordLink недоступен для пользователей upCast на базе Mac и Unix. Следовательно, пользователи upCast на этих платформах могут обрабатывать только файлы RTF.

Запустить upCast довольно просто. Главное диалоговое окно состоит из двух разделов:

    Верхний раздел («Настройки импорта») предназначен для указания входных параметров, главным из которых является имя исходного файла, который необходимо преобразовать:


Рисунок 1. Параметры импорта upCast


Рисунок 2. Настройки экспорта upCast

На втором снимке экрана я развернул список выбора, чтобы показать, что вы можете сделать с помощью upCast. По умолчанию программа выводит XML-документ, используя собственный встроенный DTD upCast. Вот фрагмент получившегося документа в этом словаре:

У него есть ряд интересных особенностей (выделены жирным шрифтом выше).

Во-первых, обратите внимание на PI таблицы стилей xml. Для захвата не только содержимого документа (которое появляется позже в виде текстовых строк внутри элементов par), но и его внешнего вида, upCast извлекает информацию о стиле из обрабатываемого документа RTF и записывает ее в каскадный стиль. Лист. Небольшой фрагмент этой таблицы стилей выглядит так:

С помощью этой таблицы стилей и PI средство просмотра (например, браузер, способный отображать XML с помощью CSS) может отображать содержимое документа примерно так, как оно отображается в исходном документе. Этот рендеринг, конечно, не является точным на 100 % — CSS не делает все то же самое, что и текстовый процессор, а браузеры, как известно, непоследовательны в том, в какой степени они поддерживают CSS.

Второе, на что следует обратить внимание в выходном документе, — это два объявления пространств имен. Один объявляет, что префикс пространства имен html: связан с пространством имен HTML 4.0.

Другой (более интересный) идентифицирует префикс пространства имен xlink:. Как upCast использует XLink? Несколькими способами, включая следующие:

    Каждая гиперссылка (включая адреса электронной почты) в исходном документе Word преобразуется в элемент ссылки с многочисленными специфическими атрибутами XLink, такими как:

Как я уже сказал, фактическая возможность использования такой разметки XLink предполагает наличие программного обеспечения, поддерживающего XLink. Браузер Mozilla может обрабатывать простые ссылки XLink в XML-документах; например, гиперссылка электронной почты в первом из трех приведенных выше маркеров отображается правильно:


Рисунок 3. Представление Mozilla элемента ссылки upCast

Опять же, вам не нужно использовать upCast просто для создания документов на собственном диалекте XML upCast. Как вы можете видеть на втором снимке экрана выше, другие параметры вывода включают XHTML 1.0 (Strict) и DocBook 4.2. (Поддержка DocBook находится только на уровне бета-версии, хотя я не обнаружил проблем с ней. И одна вещь, которую она позволяет вам сделать, — это перенести документ из Word в PDF с помощью программного обеспечения, которое генерирует вывод PDF, из ввода DocBook без использования Adobe Acrobat. сам.) Как и в случае вывода в собственный словарь upCast, выбор выходных форматов XHTML и DocBook приводит к созданию соответствующих таблиц стилей CSS.

Я столкнулся с некоторыми неожиданностями в результате отображения XHTML, но только для функций Word без точных или постоянно отображаемых аналогов CSS. Однако в целом дисплей был удивительно близок к оригиналу. Например, вот фрагмент снимка экрана из документа Word, отображаемый в Word:


Рисунок 4. Исходный документ, открытый в Word

А вот соответствующий вывод сгенерированного upCast XHTML-документа, просмотренного в Mozilla:


Рисунок 5: версия вышеприведенного документа, выведенная с помощью upCast, просмотренная в Mozilla

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

Читайте также: