WPS表格图片转wps文字的python代码

在wils大哥的代码基础上增加了图片排序问题,宽度设置问题。

使用时,源文件放在UOS系统桌面,改名为a.xlsx,运行代码后,输出文件固定为out.xlsx

放上来相当于我个人存档

再次感谢wils大哥

import os
import shutil
import zipfile
from docx import Document
from docx.shared import Inches
import re

def natural_sort_key(s):
    return [int(text) if text.isdigit() else text.lower() for text in re.split('([0-9]+)', s)]
#!  按文件名中的数字排序

width_cm = 15
width_inches = Inches(width_cm / 2.54)
#! 图片宽度默认按英寸计算,这里是将15厘米换算成英寸,15厘米是A4纸打印区的标准宽度。

with zipfile.ZipFile('/home/user/Desktop/a.xlsx', 'r') as z:
    z.extractall('tmp')
doc = Document()
for i in sorted(os.listdir('tmp/xl/media'),key=natural_sort_key):
    doc.add_picture('tmp/xl/media/' + i,width=width_inches)
doc.save('/home/user/Desktop/out.docx')
shutil.rmtree('tmp')

"""
在wils大哥的代码基础上增加了图片排序问题,宽度设置问题。
使用时,源文件放在UOS系统桌面,改名为a.xlsx,运行代码后,输出文件固定为out.xlsx
放上来相当于我个人存档
再次感谢wils大哥
"""
湖北省
浏览 134
收藏
1
分享
1 +1
1
+1
全部评论 1
 
wps新路

WPS函数专家

向wils大佬学习
· 重庆
回复