You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何使用Python docx库同时设置文本字号与颜色

嘿,这个问题我之前也帮人捋清楚过,其实是对python-docx的字体属性操作逻辑理解错啦!

你遇到的核心问题应该是尝试了错误的赋值写法(比如把两个属性用等号连在一起赋值),但实际上sizecolor.rgb是文本片段(Run对象)字体的两个独立属性,只需要分开赋值就能同时生效!

给你一个完整的可运行示例,一看就明白:

from docx import Document
from docx.shared import Pt
from docx.dml.color import RGBColor

# 创建新的Word文档
doc = Document()

# 添加段落,并获取需要设置样式的文本片段(Run对象)
paragraph = doc.add_paragraph()
styled_text = paragraph.add_run("这段文字会是22号红色字体")

# 分别设置字号和文字颜色,两个操作互不影响
styled_text.font.size = Pt(22)
styled_text.font.color.rgb = RGBColor(255, 0, 0)

# 要是需要还能顺便加个加粗,完全没问题
styled_text.font.bold = True

# 保存文档
doc.save("styled_example.docx")

为什么之前的操作失效?大概率是你误写了类似styled_text.font.size = Pt(22) = RGBColor(255,0,0)的代码——这在Python里是不合法的语法,一个赋值语句不能同时给两个属性赋值。正确的思路是:run.font返回的是一个Font对象,它包含多个独立的样式属性(字号、颜色、加粗、斜体等),每个属性都需要单独赋值来配置对应的样式。

内容的提问来源于stack exchange,提问作者cph_sto

火山引擎 最新活动