Я использую open xml и c#, чтобы попытаться сгенерировать документ с некоторыми стилями в нем, стили, сгенерированные в стилях. xml.
Я хочу, чтобы эти пользовательские стили отображались в панель стилей в Word для пользователя.
Я считаю, что правильный способ сделать это - использовать файл настроек и использовать StylePaneFormatFilter для установки этих стилей.
Однако, похоже, я не могу получить это работает.
Я попробовал следующий код, чтобы добавить StylePaneFormatFilter к документу, используя open xml
public void SetDocumentSettings(WordprocessingDocument document)
{
if (document.MainDocumentPart.DocumentSettingsPart == null)
{
DocumentSettingsPart settingsPart = document.MainDocumentPart.AddNewPart<DocumentSettingsPart>();
settingsPart.Settings = new DocumentFormat.OpenXml.Wordprocessing.Settings(
new StylePaneFormatFilter()
{
CustomStyles = OnOffValue.FromBoolean(true)
}
);
settingsPart.Settings.Save();
}
}
. В настройках генерируется следующее xml. xml file
<?xml version="1.0" encoding="UTF-8"?>
-<w:settings xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:stylePaneFormatFilter w:customStyles="true"/>
</w:settings>
однако, когда я пытаюсь проверить xml, я получаю следующую ошибку:
Описание ошибки: 'http://schemas.openxmlformats.org/wordprocessingml/2006/main: customStyles ' атрибут не объявлен. Тип ошибки: SchemaNode: DocumentFormat.Open Xml .Wordprocessing.StylePaneFormatFilterPath: / w: settings [1] / w: stylePaneFormatFilter [1] Часть: /word/settings.xml
может кто-нибудь помочь мне понять, что не так г и как это исправить.