Показать сообщение отдельно
Старый 24.11.2020, 16:49   #1  
Klug Mann is offline
Klug Mann
Участник
Аватар для Klug Mann
 
6 / 10 (1) +
Регистрация: 19.09.2007
TypeParagraph в Open XML
Привет всем!

Вопрос знатокам Open XML.
При использовании ComWordDocument_RU для переноса строки (TypeParagraph) в тексте закладки достаточно добавить в нужном месте "\n". Типичный пример:
X++:
while select table
{
    if (body)
        body += "\n";
    body += table.StrField;
}

word.insertValue("Body", body);
Правильно ли я понимаю, что в случае с Open XML, сформированная подобным образом строка не отработает нужным образом при её вставке через:
X++:
void InsertBookmarkText(BookmarkStart bookmark, string value)
{
    bookmark.Parent.InsertAfter(new Run(new Text(value)), bookmark);
}
И единственный вариант смотреть в направлении:
X++:
public static void WriteToWordDoc(string filepath, string txt)
{
        // Open a WordprocessingDocument for editing using the filepath.
        using (WordprocessingDocument wordprocessingDocument =
             WordprocessingDocument.Open(filepath, true))
        {
            // Assign a reference to the existing document body.
            Body body = wordprocessingDocument.MainDocumentPart.Document.Body;

            // Add a paragraph with some text.
            Paragraph para = body.AppendChild(new Paragraph());
            Run run = para.AppendChild(new Run());
            run.AppendChild(new Text(txt));
        }
}
?