使用python将pdf插入到docx中

python 复制代码
from pdf2image import convert_from_path
from docx import Document
from docx.shared import Inches,Cm

# 将PDF转换为图片
pages = convert_from_path('4.pdf', 200)  # 200是DPI,可以根据需要调整

doc = Document()

# 计算图片在docx中应该显示的宽度
img_width = Cm(21-6.36-2) / 2  # 图片的宽度

# 将图片直接插入到docx文件中
for i in range(0, len(pages), 2):
    paragraph = doc.add_paragraph()  # 增加一个新的段落
    run = paragraph.add_run()
    
    for j in range(i, min(i + 2, len(pages))):
        page = pages[j]
        page.save(f'page_{j}.jpg')  # 保存图片
        run.add_picture(f'page_{j}.jpg', width=img_width)  # 直接插入图片并调整宽度

doc.save('output.docx')

效果展示:

pdf为:

docx 为:


2024-3-31 01点18分

相关推荐
zopple5 分钟前
ThinkPHP5.x与3.x核心差异解析
java·python·php
2401_835956816 分钟前
Golang怎么写基准测试benchmark_Golang基准测试教程【完整】
jvm·数据库·python
lkforce39 分钟前
MiniMind学习笔记(二)--model_minimind.py
笔记·python·学习·minimind·minimindconfig
Yyyyy123jsjs40 分钟前
如何选用外汇接口实现稳定数据抓取?
大数据·python·金融
PILIPALAPENG1 小时前
第3周 Day 2:Function Calling —— 让 Agent 听懂人话,自己干活
前端·人工智能·python
高木木的博客1 小时前
数字架构智能化测试平台(1)--总纲
人工智能·python·nginx·架构
zhangchaoxies1 小时前
golang如何使用SQLx原生SQL查询_golang SQLx原生SQL查询使用方法
jvm·数据库·python
m0_743623921 小时前
mysql如何优化InnoDB缓冲池大小_mysql缓冲池内存调优
jvm·数据库·python
2501_927012571 小时前
修改pdf属性时间和日期怎么改?3种方法,零专业工具上手
经验分享·其他·pdf
m0_617881421 小时前
如何操作 XML 数据_XMLTYPE 与 EXTRACT 函数解析节点
jvm·数据库·python