2017-01-09 11 views
1

Я создал документ с использованием AltChunk, он работает хорошо. Также можно правильно видеть мой контент. Но когда я попытался прочитать содержимое документа с помощью openXML. InnerText - null, и когда я застегиваю документ, документ, добавленный с помощью , отображает AltChunk.Не удалось прочитать содержимое с помощью OpenXml из документа, созданного с помощью AltChunk в C#

Есть ли способ получить контент с помощью OpenXML, чтобы я мог проверить окончательный документ?

ответ

0

AltChunk включает файлы содержимого в основной файл. Основной файл document.xml имеет простой тег с идентификатором отношения, указывающим на один из файлов отношений (document.xml.rels или [Content_Types].xml), который затем указывает на встроенный файл ввода.

Работа по слиянию документов обрабатывается текстовым процессором при первом открытии и повторной сохранении файла, содержащего разметку AltChunk.

Если вам нужно работать с мастер-файл, после того, как вложение файлов контента, у вас есть несколько вариантов:

  1. Trust AltChunk:

    • Самый простой ответ, чтобы просто поверить, что ваш текстовый процессор сделает документ безупречным. Добавьте свой контент, сохраните мастер, перейдите к следующей задаче.
  2. Ask Слова за помощью:

    • Если вам нужно работать с основным документом после встраивания содержания, но все еще в вашей программе, вы можете просто начать COM экземпляр Слова и использовать его для открытия и сохранения основного файла. Voila, теперь у вас есть свой основной файл, а встроенный контент сглажен в один файл. Отсюда вы можете возобновить операции с SDK OpenXML.
  3. Ролл свой собственный:

    • Если вы сомневаетесь, вы всегда можете зайти в сырой OpenXML разметке с LINQ-ToXml. Из опыта я могу сказать, что это намного больше работы. Без OpenXML SDK вы несете ответственность за управление сложной структурой переплетенных XML-файлов.

    • Для недавнего проекта я создал систему для чтения, обработки, комбинирования, обработки и сохранения десятков файлов .docx. Работа в сырой разметке предложила нам полный контроль, не требуя установки Word или дополнительных зависимостей. Тем не менее, время, необходимое для внедрения надежной системы для слияния нетривиальных документов, должно измеряться в человеко-месяцах, если не человеко-месяцев.