word文档样式批量处理,久违了

这里批量处理word文档的操作主要是通过python-docx非标准库实现的,通过定位到文档对象、再到段落、最后到一行文本从而完成针对文字对象的处理。

word文档样式批量处理,久违了

【阅读全文】

使用pip的方式安装python-docx

pip install python-docx

导入实现过程中需要的模块

[En]

Import the modules needed in the implementation process

from docx import Document  # 文档处理对象

from docx.shared import RGBColor, Pt, Cm  # 文本样式处理

import os  # 应用/文件处理

import glob  # 文件处理

定义要处理的文件的路径和生成的目标文件的路径

[En]

Define the path of the file to be processed and the path of the generated target file

source_file = 'C:/source'  # 来源文件路径

target_file = 'C:/target'  # 目标文件路径

将需要批量处理样式的word文档放到source目录下面,我这里准备了一个文档作为演示处理。

word文档样式批量处理,久违了

下面是处理文本样式的代码块实现部分。

[En]

The following is the code block implementation section that deals with text styles.

for current_file in glob.glob(source_file + '/*.docx'):  # 遍历word文档文件

    word_obj = Document(current_file)  # 初始化word对象

    for para in word_obj.paragraphs:  # 遍历当前文档段落

        for run in para.runs:  # 遍历当前段落的文本块

            if 'Python' in run.text: # 判断当前文本块是否包含Python字符串

                run.font.underline = True  # 加上下划线

                run.font.color.rgb = RGBColor(255, 0, 0)  # 设置字体颜色为红色

    word_obj.save(target_file + '/' + os.path.basename(current_file))

处理完成的效果如下:

word文档样式批量处理,久违了

执行完上述代码块就可以实现我们想要的效果:批量设置word文档样式。

最后,为了补充一些工具的使用,您可以在设置字体颜色时参考下面的颜色对比表。

[En]

Finally, to supplement the use of a few tools, you can refer to the color comparison table below when setting font colors.

颜色对照表地址:

https://tool.oschina.net/commons?type=3

word文档样式批量处理,久违了

有关其他字体样式设置,请参考以下代码块

[En]

For other font style settings, refer to the following code block

'''
加粗
font.bold = True
斜体
font.italic = True
下划线
font.underline = True
删除线
font.strike = True
字号
font.size = Pt(20)
阴影
font.shadow = True
'''

在使用时,可以在文本块中直接调用它。在上面的文本处理中,我们使用带下划线的设置。

[En]

When in use, it can be called directly in the text block. In the above text processing, we use the underlined setting.

run.font.underline = True  # 加上下划线

例如,如果您需要添加阴影,您将直接在当前对应的文本块中进行类似的处理。

[En]

For example, if you need to add shadows, you will do similar processing directly in the current corresponding text block.

run.font.shadow = True

最后,需要注意的一点是在执行处理时不要将word文档使用wps或其他工具打开,否则会出现找不到文件的报错信息。

word文档样式批量处理,久违了

【往期精选】

python 如何在多层循环中使用break/continue!

用python为心爱的人制作520照片墙,已成功做出效果图!

两个库搞定python中引用javascript代码块/文件…

python实现excel数据与mysql数据库互通有无!

python 实现超快窗口截图,自动获取当前活动窗口并展示截图…

Original: https://www.cnblogs.com/lwsbc/p/16328219.html
Author: Python集中营
Title: word文档样式批量处理,久违了

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/499469/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球