У нас есть шаблон, в котором у нас есть элемент управления контентом.В программе я ищу элемент управления контентом и с помощью OpenXML вставляю туда таблицу Word с семейством шрифтов Times New Roman.
Каждый раз, когда я запускаю программу, она переводит таблицу в стиль Calibri (Body), хотя я вижу в средстве повышения производительности OpenXML, что в качестве шрифта установлен Times New Roman, и я не могу найти Calibiri внутри Inner илиВнешний XML.
Я попытался изменить его с помощью приведенного ниже кода, но это все равно не помогло.Я думаю, что есть некоторые настройки по умолчанию.Заказчик хочет, чтобы для этого элемента управления (Word Table) было установлено только значение Times New Roman размером 9, при этом формат остальных частей документа не изменился.
Using wordDoc As WordprocessingDocument = WordprocessingDocument.Open(mem, True)
Dim elements As List(Of DocumentFormat.OpenXml.OpenXmlElement) = wordDoc.MainDocumentPart.Document.Body.Where(Function(element) element.LocalName = "sdt").ToList()
For Each element As DocumentFormat.OpenXml.OpenXmlElement In elements
Dim runProperties As RunProperties = element.Descendants(Of RunProperties)().First() ' Edit the fonts
If runProperties.RunFonts Is Nothing Then
runProperties.RunFonts = New RunFonts()
End If
runProperties.RunFonts.Ascii = "Times New Roman"
runProperties.RunFonts.ComplexScript = "Times New Roman"
runProperties.RunFonts.HighAnsi = "Times New Roman" ' Edit the formatting
' Edit the size
runProperties.FontSize = New FontSize()
runProperties.FontSize.Val = "9"
Next
wordDoc.MainDocumentPart.Document.Save()