word文件樣式批量處理,久違了
阿新 • • 發佈:2022-05-30
這裡批量處理word文件的操作主要是通過python-docx非標準庫實現的,通過定位到文件物件、再到段落、最後到一行文字從而完成針對文字物件的處理。
使用pip的方式安裝python-docx
pip install python-docx
將實現過程中需要的模組匯入進來
from docx import Document # 文件處理物件
from docx.shared import RGBColor, Pt, Cm # 文字樣式處理
import os # 應用/檔案處理
import glob # 檔案處理
定義需要處理的檔案路徑及生成的目標檔案的路徑
source_file = 'C:/source' # 來原始檔路徑
target_file = 'C:/target' # 目標檔案路徑
將需要批量處理樣式的word文件放到source目錄下面,我這裡準備了一個文件作為演示處理。
下面是處理文字樣式的程式碼塊實現部分。
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文件樣式。
最後,再補充幾個工具的使用方式,設定字型顏色時可以參考下面的顏色對照表。
顏色對照表地址:
https://tool.oschina.net/commons?type=3
其他字型樣式的設定參考下面的程式碼塊
''' # 加粗 font.bold = True # 斜體 font.italic = True # 下劃線 font.underline = True # 刪除線 font.strike = True # 字號 font.size = Pt(20) # 陰影 font.shadow = True '''
使用時,直接在文字塊中呼叫即可。在上面的文字處理中我們使用的是加下劃線設定。
run.font.underline = True # 加上下劃線
比如:若是需要新增陰影則直接在當前對應的文字塊中進行類似的處理。
run.font.shadow = True
最後,需要注意的一點是在執行處理時不要將word文件使用wps或其他工具開啟,否則會出現找不到檔案的報錯資訊。
【往期精選】
python 如何在多層迴圈中使用break/continue!
用python為心愛的人制作520照片牆,已成功做出效果圖!
兩個庫搞定python中引用javascript程式碼塊/檔案...
python實現excel資料與mysql資料庫互通有無!
python 實現超快視窗截圖,自動獲取當前活動視窗並展示截圖...