【问题标题】:Change text backgroundcolor in Word在 Word 中更改文本背景颜色
【发布时间】:2012-04-16 13:53:06
【问题描述】:

情况:

  • .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 常量。看看doc,上面写着:

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

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

感谢

【问题讨论】:

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


【解决方案1】:

使用ColorTranslator

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

【讨论】:

  • 示例代码无法正常工作;我相信它缺少一个中间方法调用:ColorTranslator.ToOle(Color.FromArgb(0, 214, 227,188));。也许是不同的 .Net 版本?
猜你喜欢
  • 2018-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-19
  • 2016-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多