Диапазон тегов структурированного документа. Начало сопоставления XML.
В этом руководстве объясняется, как настроить сопоставление XML для начала диапазона тегов структурированного документа в документе Word с помощью Aspose.Words для .NET. Сопоставление XML позволяет отображать определенные части источника данных XML в элементе управления содержимым.
Предварительные условия
Чтобы следовать этому руководству, вам необходимо иметь следующее:
- Установлена библиотека Aspose.Words для .NET.
- Базовые знания C# и обработки документов Word.
Шаг 1. Настройте каталог документов
Начните с настройки пути к каталогу ваших документов. Заменять"YOUR DOCUMENT DIRECTORY"
с фактическим путем к каталогу, в котором находится ваш документ.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Шаг 2. Загрузите документ и создайте XML-часть.
Загрузите документ Word, используяDocument
конструктор, передавая путь к документу в качестве параметра. Создайте часть XML, содержащую данные, которые вы хотите отобразить в теге структурированного документа.
Document doc = new Document(dataDir + "Multi-section structured document tags.docx");
string xmlPartId = Guid.NewGuid().ToString("B");
string xmlPartContent = "<root><text>Text element #1</text><text>Text element #2</text></root>";
CustomXmlPart xmlPart = doc.CustomXmlParts.Add(xmlPartId, xmlPartContent);
Шаг 3. Установите сопоставление XML для тега структурированного документа
Получите диапазон тегов структурированного документа, начинающийся с документа. Затем настройте сопоставление XML для тега структурированного документа, чтобы отображать определенную часть пользовательской части XML с помощью выражения XPath.
StructuredDocumentTagRangeStart sdtRangeStart = (StructuredDocumentTagRangeStart)doc.GetChild(NodeType.StructuredDocumentTagRangeStart, 0, true);
sdtRangeStart.XmlMapping.SetMapping(xmlPart, "/root[1]/text[2]", null);
Шаг 4. Сохраните документ
Сохраните измененный документ в указанную директорию, используя командуSave
метод. Укажите желаемое имя файла с соответствующим расширением. В этом примере мы сохраняем документ как «WorkingWithSdt.StructuredDocumentTagRangeStartXmlMapping.docx».
doc.Save(dataDir + "WorkingWithSdt.StructuredDocumentTagRangeStartXmlMapping.docx");
Пример исходного кода для диапазона тегов структурированного документа. Начало сопоставления XML с использованием Aspose.Words для .NET.
// Путь к каталогу ваших документов
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Multi-section structured document tags.docx");
// Создайте часть XML, содержащую данные, и добавьте ее в коллекцию CustomXmlPart документа.
string xmlPartId = Guid.NewGuid().ToString("B");
string xmlPartContent = "<root><text>Text element #1</text><text>Text element #2</text></root>";
CustomXmlPart xmlPart = doc.CustomXmlParts.Add(xmlPartId, xmlPartContent);
Console.WriteLine(Encoding.UTF8.GetString(xmlPart.Data));
// Создайте StructuredDocumentTag, который будет отображать содержимое нашей CustomXmlPart в документе.
StructuredDocumentTagRangeStart sdtRangeStart = (StructuredDocumentTagRangeStart)doc.GetChild(NodeType.StructuredDocumentTagRangeStart, 0, true);
// Если мы установим сопоставление для нашего StructuredDocumentTag,
// он будет отображать только часть CustomXmlPart, на которую указывает XPath.
// Этот XPath будет указывать на содержимое второго элемента «<text>» первого элемента «<root>» нашей CustomXmlPart.
sdtRangeStart.XmlMapping.SetMapping(xmlPart, "/root[1]/text[2]", null);
doc.Save(dataDir + "WorkingWithSdt.StructuredDocumentTagRangeStartXmlMapping.docx");
Вот и все! Вы успешно настроили сопоставление XML для начала диапазона тегов структурированного документа в документе Word с помощью Aspose.Words для .NET.