python - 如何使用 python-docx 使文本变为粗体、蓝色、16 号和特定字体?
问题描述
我试图让 python-docx 将我的一些文本吐出为 16 号蓝色和粗体 Calibri。我知道如何单独执行,但它会生成以每种不同格式重复的相同单词。如何让它将我的所有格式应用到一段文本?
以下是我目前拥有的。
font.name='Calibri'
document.add_paragraph().add_run('Area: '+str(df.loc[df['Subject']==i,'Area'].iloc[0])).bold=True
document.add_paragraph().add_run('Area: '+str(df.loc[df['Subject']==i,'Area'].iloc[0])).font.color.rgb = RGBColor(79, 129, 189)
document.add_paragraph().add_run('Area: '+str(df.loc[df['Subject']==i,'Area'].iloc[0])).font.size=16
目前它不应用字体并产生以下文本格式
文本
文字(蓝色)
文字(16号)
我希望它在粗体、蓝色、16 号和 Calibri 后生成“文本”。我怎么做?
解决方案
run = document.add_paragraph().add_run(
'Area: '+str(df.loc[df['Subject']==i,'Area'].iloc[0])
)
run.bold=True
run.font.color.rgb = RGBColor(79, 129, 189)
run.font.name = 'Calibri'
run.font.size=16
.add_run()
如果您只设置一个属性并且之后不需要运行引用,则您的初始表单(只需在调用结束时添加一个属性)会很方便。但更通用的方法是捕获Run
返回的对象.add_run()
,然后对其应用所需的任何属性设置。
推荐阅读
- r - 如何设置默认程序以从 RStudio 打开针织 Word 文件?
- bash - perl 更新查询错误
- c# - Kentico:下载文件上传到 cms
- discord - Discord 机器人如何只回复特定用户?
- python - 为什么我的 Pandas 绘图功能会在彼此之上绘制独立的数据集?
- python - Counting the many-to-many value in filter
- python - 正则表达式在字符串中查找一系列大写单词
- select - 作为谷歌表格查询的一部分,如何阻止upper()被拉出?
- java - 如何解决aosp中不允许的明文
- excel - 通过电子邮件发送活动工作簿但更改名称