首页 > 解决方案 > 需要使用 win32com 更改 MS Word 中矩形的颜色

问题描述

在 MS Word 中,我使用 Win32com 将矩形绘制为 Autoshape,但我无法理解如何使用 FillFormat 更改其颜色。

word = win32com.client.gencache.EnsureDispatch('Word.Application')
document = word.ActiveDocument
rect = shapes.AddShape(1, 56.7, 14.2, 524.4, 813.5)

默认情况下,它提供纯蓝色图形。我需要的是带有黑色粗边框的透明矩形。

标签: pythonms-wordpywin32win32com

解决方案


“粗边框”不是一个确切的参数,而是基于默认边框已经是“粗”的假设,下面的 VBA 示例代码说明了如何去除填充并更改边框的颜色:

rect.Fill.Visible = 0  'msoFalse
rect.Line.ForeColor.RGB = RGB(0, 0, 0)

我不使用 Python,但是从问题中的代码中可以看出,一旦它连接到 Word 应用程序和 Document 对象,它就可以像 VBA 一样使用对象模型......


推荐阅读