说明

为了方便将pdf格式发票转为图片,找到以下方法,转换后的效果非常不错,特此记录在自己的笔记中,根据自己的需要,代码稍微有所优化修改

参考网址:https://zhuanlan.zhihu.com/p/102742847

三方库安装

pip install fitz
pip install PyMuPDF

代码示例

import os
import fitz def pdf_to_image(pdf_path, img_path=None, zoom_x=5, zoom_y=5, theta=0):
"""
PDF转PNG
:param pdf_path: pdf文件的路径
:param img_path: 图像要保存的文件夹
:param zoom_x: x方向的缩放系数
:param zoom_y: y方向的缩放系数
:param theta: 旋转角度
:return: dst_path
"""
if not img_path:
img_path = os.path.abspath(os.path.join(pdf_path, '../')) with fitz.open(pdf_path) as pdf:
name = os.path.basename(pdf.name)
file_name = name.split('.')[0]
page = pdf[0]
# 设置缩放和旋转
trans = fitz.Matrix(zoom_x, zoom_y).preRotate(theta)
pm = page.getPixmap(matrix=trans, alpha=False)
dst_path = f'{img_path}/{file_name}.png'
# 保存
pm.writePNG(dst_path) return dst_path

最新文章

  1. 【poj2154】 Color
  2. php 错误堆栈
  3. Chrome浏览器官方下载地址
  4. Google 面试
  5. CSS 伪元素&伪类
  6. 用Random类输出验证码
  7. bzoj 1458 网络流
  8. java基础问题 (转)
  9. [Node.js] CommonJS Modules
  10. Pascal编译器大全(非常难得)
  11. Linux编译安装Darwin Streaming Server 6.0.3
  12. Spring事务Transaction配置的五种注入方式详解
  13. Android上按钮解决快速点击问题
  14. python 学习 异常处理
  15. TPYBoard自制微信远程智能温湿度计
  16. Asp.net Zero 应用实战-最初部署问题
  17. 十大经典排序算法(python实现)(原创)
  18. day02 编程语言和变量
  19. 十个前端UI优秀框架
  20. EF For Mysql

热门文章

  1. nvm安装及使用(windon/mac)
  2. 针对Vmware打开BIOS中VT虚拟化相关后仍然报错
  3. linux下启动rabbitmq,redis,nginx
  4. 下载接口时出现:Try to run this command from the system terminal. Make sure that you use the correct version of 'pip' installed for your Python interpreter located at 'D:\python\demo\venv\Scripts\...的错误
  5. flink sql任务出现java.lang.OutOfMemoryError: Metaspace
  6. 快速使用时序数据库InfluxDB
  7. flask框架的使用
  8. reduce对数组及数组对象的常见操作
  9. Django操作mongo数据库一(配置文件里写连接信息)
  10. 解决linux系统中对两个不同的网络连接http访问