python 操作word 替换字符串为图片_用python将.docx文件中的字符串替换为jpg

使用Python的win32com库,将.jpg文件转换为BMP并复制到剪贴板,替换.docx文件中的特定字符串。问题在于替换后的图像过大且模糊,询问如何进行尺寸调整。
摘要由CSDN通过智能技术生成

对不起,我的英语不好。在

我试图用.jpg文件替换.docx文件中的字符串。首先,我将JPEG转换为BMP并将其移动到剪贴板,然后使用找到。执行用“^c”替换docx文件中的特殊字符串。在

这个替换很好,但是它将一个宽度为15.42cm的图像粘贴到.docx文件中。我试着用即时消息调整大小,但它以一个大的模糊图像结束,而不是一个小图像。我怎么能把它变小?在

我用的是python2.7.2和Win7。谢谢。在from win32com.client import Dispatch

from cStringIO import StringIO

import win32clipboard

import win32com

from PIL import Image

def setImageToClipboard(clip_type, data):

win32clipboard.OpenClipboard()

win32clipboard.EmptyClipboard()

win32clipboard.SetClipboardData(clip_type, data)

win32clipboard.CloseClipboard()

filepath = 'd:/tmp.jpg'

im = Image.open(filepath)

#im = im.resize((10, 10))

output = StringIO()

im.convert("RGB").save(output, "BMP")

data = output.getvalue()[14:]

output.close()

w = win32com.client.Dispatch('Word.Application')

w.Visible = 1

w.DisplayAlerts = 0

doc = w.Documents.Open("d:/clipboard_test.docx")

search = "TEST"

setImageToClipboard(win32clipboard.CF_DIB, data)

w.Selection.Find.ClearFormatting()

w.Selection.Find.Replacement.ClearFormatting()

w.Selection.Find.Execute("TEST", False, True, False, False, False, True, 1, True, ReplaceWith="^c", Replace=2000)

doc.SaveAs("d:/clipboard_test2.docx")

doc.Close()

w.Quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值