6

情况:

  • .net 3.5
  • c# 或 vb.net(也测试过)
  • word 2007 插件

我正在尝试将文本的背景颜色设置为自定义 rgb 颜色。

代码如下:

Range r = this.Application.ActiveDocument.Range();
r.Text = "blabla";
r.Font.Shading.BackgroundPatternColor =(WdColor) Color.FromArgb(0, 214, 227,188).ToArgb();

起初它似乎工作,除了颜色不正确。似乎每当我设置自定义颜色时,它都会将其更改为现有的 WdColor 常量。看看文档,它说:

返回或设置应用于 Shading 对象背景的 24 位颜色。可以是任何有效的 WdColor 常量或 Visual Basic 的 RGB 函数返回的值。

所以,我的问题是:有人知道它应该如何工作吗?

谢谢

4

1 回答 1

11

使用颜色转换器

Range r = this.Application.ActiveDocument.Range();
r.Text = "blabla";
r.Font.Shading.BackgroundPatternColor =(WdColor)ColorTranslator.ToOle(0, 214, 227,188);
于 2012-04-23T11:55:59.973 回答