Ms word Word VSTO-无法为插图(图形)对象设置ForeColor.RGb属性 在桌面上打开Word O365 转到插入>图标>插图 选择巴士图

Ms word Word VSTO-无法为插图(图形)对象设置ForeColor.RGb属性 在桌面上打开Word O365 转到插入>图标>插图 选择巴士图,ms-word,vsto,Ms Word,Vsto,使用以下代码,我无法设置forecolor的RGB属性 InlineShape ish = document.InlineShapes[1]; ish.Fill.Solid(); ish.Fill.ForeColor.RGB = 16777215; //RGB White 在设置值之前和之后,RGB属性均为0。然而,值得注意的是,总线的颜色在单词application上发生了变化。但不是在调试器中 我想在设置前检查前景色的RGB颜色值。我该如何解决这个问题?我访问酒店的方式有什么问题吗?这适

使用以下代码,我无法设置forecolor的RGB属性

InlineShape ish = document.InlineShapes[1];
ish.Fill.Solid();
ish.Fill.ForeColor.RGB = 16777215; //RGB White
在设置值之前和之后,RGB属性均为0。然而,值得注意的是,总线的颜色在单词application上发生了变化。但不是在调试器中


我想在设置前检查前景色的RGB颜色值。我该如何解决这个问题?我访问酒店的方式有什么问题吗?这适用于Word中的所有图标。

要获取图标部分的颜色,请将其解组两次或使用“图形格式”>“转换为形状”(抱歉,我不知道C#命令)。这会将图标转换为本机Office形状,可通过代码访问以获取颜色。@JohnKorchok:我只能将对象解组一次。本质上,它会将sa、me转换为该插图对象的形状。我不想把插图转换成形状。我很想知道在没有改变ish.Fill.ForeColor.RGB属性的情况下,颜色是如何变为白色的。要使Word以白色渲染对象,某些属性必须已从黄色更改为白色。我想在修改之前确认该属性的值。应用填充时的颜色更改会误导您。要获得总线的颜色,您需要在ShapeRange(分组对象)中找到该形状的填充。我不知道C#等价于shaperage。但是,只有通过解组将对象转换为Microsoft Office图形对象后,才能使用VBA获得该结果。也许C#有一些神奇的方法可以从嵌入式SVG中获取这些信息,但我对此表示怀疑。