當我在c#中使用openxml sdk 2創建段落樣式並將其應用於段落時,每件事物都將是正確的,它將毫無問題地運行。如何將字符樣式應用於文字處理文檔中的運行?
但與下面的代碼,當我創建一個字符樣式,並將其應用到運行使其不改變文件的運行:下面
代碼將創建和樣式保存到文檔樣式的一部分:
StyleDefinitionsPart stylePart = mainPart.AddNewPart<StyleDefinitionsPart>();
Style style = new Style()
{
Type = StyleValues.Character,
CustomStyle = true,
StyleId = "CharacterStyle1"
};
LinkedStyle linkedStyle1 = new LinkedStyle() { Val = "LinkedStyle" };
style.Append(linkedStyle1);
style.Append(new Name() { Val = "CharacterStyle1" });
StyleRunProperties styleRunProperties1 = new StyleRunProperties();
Color color = new Color() { Val = "FF0000" };
RunFonts font1 = new RunFonts() { ComplexScript = "Tahoma" };
styleRunProperties1.Append(color);
styleRunProperties1.Append(font1);
styleRunProperties1.Append(new Bold());
styleRunProperties1.Append(new FontSize() { Val = "48" });
style.Append(styleRunProperties1);
stylePart.Styles = new Styles();
stylePart.Styles.Append(style);
及以下的代碼是什麼我寫的樣式應用到運行:
Paragraph heading = new Paragraph();
ParagraphProperties headingPPr = new ParagraphProperties();
heading.Append(headingPPr);
Run run1 = new Run();
Text textRun1 = new Text("THIS IS TEST RUN 1");
run1.Append(textRun1);
RunProperties rprRun1 = new RunProperties {RunStyle = new RunStyle() {Val = "CharacterStyle1"}};
heading.Append(run1);
body.Append(heading);
這些都是document.xml中的輸出代碼:
<?xml version="1.0" encoding="utf-8"?>
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:body>
<w:p>
<w:pPr />
<w:r w:rsidRPr="009531B2">
<w:t>THIS IS TEST RUN 1</w:t>
</w:r>
</w:p>
</w:body>
</w:document>
的風格並沒有應用到我跑!
最後,當打開輸出文檔時,這是樣式庫的屏幕截圖,此圖顯示樣式已成功添加到文檔,但不適用於運行:
我如何申請一個字符樣式來運行?基於該ECMA specification for OpenXML
謝謝,這是代碼輸出當我改變它作爲你說:<?XML版本= 「1.0」 編碼= 「UTF-8」> ' THIS IS TEST RUN 1 ' _but它並沒有改變run1_ –
2013-04-11 01:50:11
的風格@ RezaM.A請檢查更新。 – Flowerking 2013-04-11 08:11:35