Мне нужно собрать несколько файлов .docx в папке и "соединить" их в один документ, который будет отображаться пользователю.
Теперь я прочитал статью статью Брайана Джонса, но, хотя это звучало многообещающе, я столкнулся с проблемой.
Когда я выполняю действия вручную с помощью Word 2007, я заканчиваю копией файла docx в папке /embeddings, и когда я открываю документ, мне предоставляется встроенный контент.
Однако, когда я делаю то же самое через код, я получаю файл с именем package.bin в папке /embeddings, и когда я открываю документ, меня приветствует альтернативный образ, говорящий мне дважды щелкнуть по нему для активации встроенного документа. Это не то, что я хотел.
Может кто-то уточнить, как я вставляю документ (ы), чтобы они отображались как .docx файлы, а не .bin? Я надеюсь, что это позволит преодолеть проблему Double-Click для активации.
Спасибо в Advance
Я разместил этот вопрос на форумах OpenXMLDeveloper и был перенаправлен на другой статьи Брайана Джонса.
В то время как блог указал мне в правильном направлении, это была не волшебная пуля. У меня были проблемы с форматированием, которые были устранены добавлением элемента MatchSource в AltChunk;
MatchSource matchSrc = new MatchSource();
matchSrc.Val = DocumentFormat.OpenXml.Wordprocessing.BooleanValues.True;
altChunk.AppendChild(matchSrc);
Мне также нужно было удалить нижний колонтитул из объединенных документов, поскольку они были воспроизведены в новом документе (что привело к многочисленным нижним колонтитулам в нижнем колонтитуле!). Теперь у меня есть только нижний колонтитул в шаблоне для основного документа.
Надеюсь, что это поможет кому-то еще, поскольку, похоже, не слишком много информации, есть момент.