C#OpenXml选择性字体加粗
我有一个函数,它接受几个字体参数,并在RunProperties类中生成所需的字体。如何打开/关闭粗体类?MSDN在这个问题上是毫无用处的C#OpenXml选择性字体加粗,c#,fonts,ms-word,openxml,C#,Fonts,Ms Word,Openxml,我有一个函数,它接受几个字体参数,并在RunProperties类中生成所需的字体。如何打开/关闭粗体类?MSDN在这个问题上是毫无用处的 public RunProperties getRCFont(int size, string color = "000000", string font = "Futura Bk BT", bool bld = false, bool und = false) { return new RunProperties(new Bold() { Val
public RunProperties getRCFont(int size, string color = "000000", string font = "Futura Bk BT", bool bld = false, bool und = false) {
return new RunProperties(new Bold() { Val = bld ? OnOffOnlyValues.On : OnOffOnlyValues.Off });
}
这不起作用,产生以下错误:
错误1无法将类型“DocumentFormat.OpenXml.Wordprocessing.OnOffonlyValue”隐式转换为“DocumentFormat.OpenXml.OnOffValue”
但是OnOffValue类没有属性
注意:Underline类有UnderlineValues类,但对于粗体类(如BoldValues)没有,呸
编辑-很抱歉我收到了。对于任何对解决方案感兴趣的人:
return new RunProperties(new Bold() { Val = bld ? new OnOffValue { Value = true } : new OnOffValue { Value = false } });
您可以使用bld而不是运算符“”恢复线路:
RunProperties(new Bold(){Val=new OnOffValue{Value=bld}}) 您可以使用bld恢复线路,而不是使用运算符“”: RunProperties(new Bold(){Val=new OnOffValue{Value=bld}}) 另一种(较短的)编写方法:RunProperties(new Bold(){Val=OnOffValue.FromBoolean(bld)});另一种(较短的)编写方法:RunProperties(new Bold(){Val=OnOffValue.FromBoolean(bld)});
RunProperties(new Bold() { Val = bld ? new OnOffValue { Value = true } : new OnOffValue { Value = false } });