AutoFitPictureinWordwithPythondocx
创始人
2024-11-12 13:30:14
0

使用Python docx库自动调整Word中的图片大小。

使用Python docx库中的Image类和Shape类的属性进行操作,将图片的大小设置为页面的宽度,实现图片自动适应页面大小。

代码示例:

from docx import Document
from docx.shared import Cm

doc = Document('example.docx')

for paragraph in doc.paragraphs:
    for run in paragraph.runs:
        if run.element.tag.endswith('}r'):
            for tup in run.element.xpath('.//wp:docPr'):
                if 'inline' in tup.attrib.values():
                    try:
                        shape_id = run._r.xpath('.//a:blip')[0].attrib['{%s}embed' % doc.part.related_parts[
                        run._r.xpath('.//a:blip')[0].attrib['{%s}link' % doc.part.nsmap['r']].rId].reltype]
                        shape_size = doc.part.related_parts[shape_id]._element.xpath('.//a:ext')[0]
                        cx = shape_size.get('cx')
                        cy = shape_size.get('cy')
                        cx, cy = int(cx), int(cy)
                        
                        if cx > doc.page_width * 9525:
                            shape_size.set('cx', str(doc.page_width * 9525))
                            shape_size.set('cy', str(cy * doc.page_width * 9525 // cx))
                    except:
                        pass

doc.save('example.docx')

注意:上面的代码仅对InlineShape(布局与文字相邻的图片)进行了调整,如果需要调整其他类型的图片,请将代码改为适当的方式来实现。

相关内容

热门资讯

黑科技插件!智星德州安卓版下载... 黑科技插件!智星德州安卓版下载方法(wepokeai代打)最初是有挂(真实有挂)-哔哩哔哩1、wep...
黑科技挂!wepokeai代打... 黑科技挂!wepokeai代打辅助(德扑ai机器人软件开发)果然有挂(有挂教学)-哔哩哔哩;德扑ai...
黑科技ai代打!聚星扑克有假(... 黑科技ai代打!聚星扑克有假(aa poker有外挂吗)果然真的是有挂(有挂规律)-哔哩哔哩,您好,...
黑科技苹果版!德州ai机器人(... 黑科技苹果版!德州ai机器人(wpk最新黑科技)从前存在有挂(有挂规律)-哔哩哔哩1、许多玩家不知道...
黑科技讲解!德州之星有辅助挂(... 您好,德扑ai助手软件这款游戏可以开挂的,确实是有挂的,需要了解加威信【136704302】很多玩家...
黑科技插件!微扑克如何让系统发... 黑科技插件!微扑克如何让系统发好牌(aa poker有外挂吗)果然有挂(有挂详情)-哔哩哔哩1、微扑...
黑科技教学!aapoker有外... 黑科技教学!aapoker有外挂(aapoker辅助工具ai)往昔真的有挂(有挂教学)-哔哩哔哩1、...
黑科技总结!wepoke辅助挂... 黑科技总结!wepoke辅助挂(wepoke智能ai)原生存在有挂(有挂攻略)-哔哩哔哩1、wepo...
黑科技私人局!来玩app德州扑... 黑科技私人局!来玩app德州扑克(aa poker有外挂吗)从前存在有挂(今日头条)-哔哩哔哩是一款...
黑科技好友!wepoke有透视... 自定义aa poker有外挂吗系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助...