在Word中更改文本背景颜色

时间:2012-04-16 13:53:06

标签: c# office-interop word-2007 office-addins

情况:

  • .net 3.5
  • c#或vb.net(也经过测试)
  • word 2007 add-in

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

代码如下:

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

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

  

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

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

感谢名单

1 个答案:

答案 0 :(得分:11)

使用ColorTranslator

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