您现在的位置是:首页 > 技术教程 正文

通过Python的fitz库提取pdf中的图片

admin 阅读: 2024-03-23
后台-插件-广告管理-内容页头部广告(手机)

文章目录

  • 前言
  • 一、fitz库是什么?
  • 二、安装fitz库
  • 三、查看fitz库版本
  • 四、pymupdf库是什么?
  • 五、安装pymupdf库
  • 六、查看pymupdf库版本
  • 七、fitz和pymupdf是什么关系?
  • 八、提取pdf中的图片
    • 1.引入库
    • 2.定义pdf路径
    • 3.打开PDF文件
    • 4.遍历所有页面
    • 5.获取页面上所有图像
    • 6.遍历所有图像
    • 7.获取图像的XREF编号和图像数据
    • 8.如果图像是RGB颜色空间,则保存为PNG文件
  • 总结
    • pdf
    • 提取图片效果

前言

大家好,我是空空star,本篇给大家分享一下《通过Python的fitz库提取pdf中的图片》。

一、fitz库是什么?

Fitz库是一个Python图像处理库,主要用于打开、编辑和保存PDF、TIFF和JPEG格式的图像。它可以帮助用户读取和写入PDF文件,提取PDF页面以及在页面上进行标记和注释。此外,Fitz库还提供了一些图像处理功能,如旋转、裁剪、缩放、调整亮度、对比度和色彩平衡等。这些功能使得Fitz库成为一个非常实用的图像处理工具。

二、安装fitz库

pip install fitz
  • 1

三、查看fitz库版本

pip show fitz
  • 1

Name: fitz
Version: 0.0.1.dev2
Summary: Fitz: Workflow Mangement for neuroimaging data.
Home-page: http://github.com/kastman/fitz
Author: Erik Kastman
Author-email: erik.kastman@gmail.com
License: BSD (3-clause)
Requires: configobj, configparser, httplib2, nibabel, nipype, numpy, pandas, pyxnat, scipy
Required-by:

四、pymupdf库是什么?

使用fitz,需要安装pymupdf库。

PyMuPDF 是一个基于 Python 的开源 PDF 处理库,提供了一系列的 PDF 文档处理功能,如读取、编辑、创建、转换等。它是 MuPDF 的 Python 绑定,MuPDF 是一款轻量级的开源 PDF 文档渲染引擎,支持多种平台和多种文件格式。
PyMuPDF 具有快速、高效、简单易用等特点,可以用于 PDF 文档的自动化处理和批量处理,比如提取文本、提取图片、添加或修改书签、添加或修改注释、合并 PDF 文件、切割 PDF 文件、提取 PDF 页面等。同时,它还支持 PDF 渲染成图片,方便快速预览和生成缩略图。
总之,PyMuPDF 是一个非常实用的 Python PDF 处理库,适用于多种场景,如数据处理、文档处理、自动化办公等。

五、安装pymupdf库

pip install pymupdf
  • 1

六、查看pymupdf库版本

pip show pymupdf
  • 1

Name: PyMuPDF
Version: 1.22.3
Summary: Python bindings for the PDF toolkit and renderer MuPDF
Home-page: https://github.com/pymupdf/PyMuPDF
Author: Artifex
Author-email: support@artifex.com
License: GNU AFFERO GPL 3.0
Requires:
Required-by:

七、fitz和pymupdf是什么关系?

fitz 是 Pymupdf 库的一个模块,它是 Pymupdf 的主要模块之一,也是最常用的模块。fitz 模块提供了对 PDF 文档的基本操作,如打开、读取、编辑、保存等。

八、提取pdf中的图片

1.引入库

import fitz
  • 1

2.定义pdf路径

local = '/Users/kkstar/Downloads/'
  • 1

3.打开PDF文件

pdf_doc = fitz.open(local+'demo_pic.pdf')
  • 1

4.遍历所有页面

for pg in range(pdf_doc.page_count): page = pdf_doc[pg]
  • 1
  • 2

5.获取页面上所有图像

image_list = page.get_images()
  • 1

6.遍历所有图像

for img in image_list:
  • 1

7.获取图像的XREF编号和图像数据

xref = img[0] pix = fitz.Pixmap(pdf_doc, xref)
  • 1
  • 2

8.如果图像是RGB颜色空间,则保存为PNG文件

if str(fitz.csRGB) == str(pix.colorspace): img_path = local + f'image{pg+1}_{xref}.png' pix.save(img_path)
  • 1
  • 2
  • 3

总结

pdf

提取图片效果

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索