写在前面

本随笔是非常菜的菜鸡写的。如有问题请及时提出。

可以联系:1160712160@qq.com

GitHhub:https://github.com/WindDevil (目前啥也没有

动机

由于WPS的提取图片需要收费,作为穷鬼的我直接在bing,键入open source software get picture form pdf.

找到这个项目:VR51/Batch-PDF-Image-Extractor: Extract images from PDF documents. Works on multiple and single PDF files (github.com)

看到这个项目的Requirements:

This script reqires pdfimages to be installed. The script will check for pdfimages and prompt for its installation if not found.

显示需要pdfimages这个工具.

安装

于是继续搜索pdfimages,得到这个网站.

我们可以看到这个库可以直接通过apt-get得到.这里由于需要用到Linux,我使用的是虚拟机的方法可以参考这篇博客.

于是在虚拟机里键入sudo apt-get install poppler-utils,注意它的名字是poppler-utils.

使用方法

直接键入pdfimages -h尝试查找它的教程:

pdfimages version 22.02.0
Copyright 2005-2022 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011 Glyph & Cog, LLC
Usage: pdfimages [options] <PDF-file> <image-root>
-f <int> : first page to convert
-l <int> : last page to convert
-png : change the default output format to PNG
-tiff : change the default output format to TIFF
-j : write JPEG images as JPEG files
-jp2 : write JPEG2000 images as JP2 files
-jbig2 : write JBIG2 images as JBIG2 files
-ccitt : write CCITT images as CCITT files
-all : equivalent to -png -tiff -j -jp2 -jbig2 -ccitt
-list : print list of images instead of saving
-opw <string> : owner password (for encrypted files)
-upw <string> : user password (for encrypted files)
-p : include page numbers in output file names
-q : don't print any messages or errors
-v : print copyright and version info
-h : print usage information
-help : print usage information
--help : print usage information
-? : print usage information

很容易看出使用方法是pdfimages [options] <PDF-file> <image-root>,也即pdfimages+选项+PDF文件路径+输出图片路径.

这里比较重点地点出,如果直接使用指令,默认生成格式不是jpg或者png,需要在输入指令的时候选项部分输入-png或者-j,这个指令就可以把pdffile.pdf的图片提取到当前目录下:

pdfimages -j pdffile.pdf ./

实验

Downloads文件夹下创建files,把主机PDF文件拷贝到虚拟机.

cd ~/Downloads
mkdir files
cd files

我直接用VScode的SSH把文件拖进去的.

写在前面

本随笔是非常菜的菜鸡写的。如有问题请及时提出。

可以联系:1160712160@qq.com

GitHhub:https://github.com/WindDevil (目前啥也没有

动机

由于WPS的提取图片需要收费,作为穷鬼的我直接在bing,键入open source software get picture form pdf.

找到这个项目:VR51/Batch-PDF-Image-Extractor: Extract images from PDF documents. Works on multiple and single PDF files (github.com)

看到这个项目的Requirements:

This script reqires pdfimages to be installed. The script will check for pdfimages and prompt for its installation if not found.

显示需要pdfimages这个工具.

安装

于是继续搜索pdfimages,得到这个网站.

我们可以看到这个库可以直接通过apt-get得到.这里由于需要用到Linux,我使用的是虚拟机的方法可以参考这篇博客.

于是在虚拟机里键入sudo apt-get install poppler-utils,注意它的名字是poppler-utils.

使用方法

直接键入pdfimages -h尝试查找它的教程:

pdfimages version 22.02.0
Copyright 2005-2022 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011 Glyph & Cog, LLC
Usage: pdfimages [options] <PDF-file> <image-root>
-f <int> : first page to convert
-l <int> : last page to convert
-png : change the default output format to PNG
-tiff : change the default output format to TIFF
-j : write JPEG images as JPEG files
-jp2 : write JPEG2000 images as JP2 files
-jbig2 : write JBIG2 images as JBIG2 files
-ccitt : write CCITT images as CCITT files
-all : equivalent to -png -tiff -j -jp2 -jbig2 -ccitt
-list : print list of images instead of saving
-opw <string> : owner password (for encrypted files)
-upw <string> : user password (for encrypted files)
-p : include page numbers in output file names
-q : don't print any messages or errors
-v : print copyright and version info
-h : print usage information
-help : print usage information
--help : print usage information
-? : print usage information

很容易看出使用方法是pdfimages [options] <PDF-file> <image-root>,也即pdfimages+选项+PDF文件路径+输出图片路径.

这里比较重点地点出,如果直接使用指令,默认生成格式不是jpg或者png,需要在输入指令的时候选项部分输入-png或者-j,这个指令就可以把pdffile.pdf的图片提取到当前目录下:

pdfimages -j pdffile.pdf ./

实验

Downloads文件夹下创建files,把主机PDF文件拷贝到虚拟机.

cd ~/Downloads
mkdir files
cd files

我直接用VScode的SSH把文件拖进去的.

然后执行pdfimages -j LDO.pdf ./,使用ls指令看一下生成了什么:

-000.ppm  -001.ppm  -002.ppm  -003.ppm  -004.ppm  -005.ppm  LDO.pdf

很奇怪地没用生成.jpg而是.ppm,挠头.

改为执行pdfimages -png LDO.pdf ./,使用ls指令看一下生成了什么:

-000.png  -000.ppm  -001.png  -001.ppm  -002.png  -002.ppm  -003.png  -003.ppm  -004.png  -004.ppm  -005.png  -005.ppm  LDO.pdf

确实可以生成.png文件.

然后只需要把图片从虚拟机拷出来就行了.

然后执行pdfimages -j LDO.pdf ./,使用ls指令看一下生成了什么:

-000.ppm  -001.ppm  -002.ppm  -003.ppm  -004.ppm  -005.ppm  LDO.pdf

很奇怪地没用生成.jpg而是.ppm,挠头.

改为执行pdfimages -png LDO.pdf ./,使用ls指令看一下生成了什么:

-000.png  -000.ppm  -001.png  -001.ppm  -002.png  -002.ppm  -003.png  -003.ppm  -004.png  -004.ppm  -005.png  -005.ppm  LDO.pdf

确实可以生成.png文件.

然后只需要把图片从虚拟机拷出来就行了.

如何免费提取PDF里的图片-pdfimages使用教程的更多相关文章

  1. Java 添加、提取PDF中的图片

    Spire.Cloud.SDK for Java提供了PdfImagesApi接口可用于添加图片到PDF文档addImage().提取PDF中的图片extractImages(),具体操作步骤和Jav ...

  2. 用Spire.PDF提取PDF里的PNG图片

    用Nuget抓取类库,FreeSpire.PDF就可以 代码如下 , 亲测可以抓取PNG图形,即使原图是JPG,也会存成PNG格式输出: //加载PDF文档 PdfDocument doc = new ...

  3. Java 使用PDFBox提取PDF文件中的图片

    今天做PDF文件解析,遇到一个需求:提取文件中的图片并保存.使用的是流行的apache开源jar包pdfbox, 但还是遇到坑了,比如pdfbox版本太高或太低都不能用!!这个包竟然没有很好地做好兼容 ...

  4. 利用python第三方库提取PDF文件的表格内容

    小爬最近接到一个棘手任务:需要提取手机话费电子发票PDF文件中的数据.接到这个任务的第一时间,小爬决定搜集各个地区各个时间段的电子发票文件,看看其中的差异点.粗略统计下来,PDF文件的表格框架是统一的 ...

  5. CAD转PDF再由pdf转jpg图片

    免费的PDF转JPG图片 https://www.gaitubao.com/pdf-to-jpg/

  6. 个人永久性免费-Excel催化剂功能第88波-批量提取pdf文件信息(图片、表格、文本等)

    日常办公场合中,除了常规的Excel.Word.PPT等文档外,还有一个不可忽略的文件格式是pdf格式,而对于想从pdf文件中获取信息时,常规方法将变得非常痛苦和麻烦.此篇给大家送一pdf文件提取信息 ...

  7. 在线提取PDF中图片和文字

    无需下载软件,你就可以在线提取PDF中图片和文字,http://www.extractpdf.com/不仅可以获取本地PDF文档的图片和文字,还能获取远程PDF文档的图片和文字.如下图所示:结果本人测 ...

  8. C#如何在PDF文件添加图片印章

    文档中添加印章可以起一定的作用,比如,防止文件随意被使用,或者确保文档内容的安全性和权威性.C#添加图片印章其实也有很多实现方法,这里我使用的是免费的第三方软件Free Spire.PDF,向大家阐述 ...

  9. C#技术分享【PDF转换成图片——13种方案】(2013-07-25重新整理)

    原文:C#技术分享[PDF转换成图片--13种方案](2013-07-25重新整理) 重要说明:本博已迁移到 石佳劼的博客,有疑问请到 文章新地址 留言!!! 写在最前面:为了节约大家时间,撸主把最常 ...

  10. C#技术分享【PDF转换成图片——11种方案】

    1.[iTextSharp.dll],C# 开源PDF处理工具,可以任意操作PDF,并可以提取PDF中的文字和图片,但不能直接将PDF转换成图片. DLL和源码 下载地址:http://downloa ...

随机推荐

  1. 七年之痒!一个 PHP 程序员职业生涯的自述

    大家好,我是码农先森. 今年刚好是我毕业的第七个年头,在婚姻感情当中都有一种「七年之痒」的说法,这次我把这个词「七年之痒」用一次在我的职业生涯复盘上.七年前我从告别校园,踏入互联网编程行业,七年后我依 ...

  2. windows安装mysql8(5分钟)

    1.下载 MySQL https://dev.mysql.com/downloads/mysql/ 下载完成后,解压缩到你的目录里. 2.配置 MySQL 的配置文件 创建一个文件,名称为:my.in ...

  3. Advanced .Net Debugging 9:平台互用性

    一.介绍 这是我的<Advanced .Net Debugging>这个系列的第九篇文章.这篇文章的内容是原书的第二部分的[调试实战]的第七章[互用性].互用性包含两个方面,第一个方面就是 ...

  4. c# webApi返回Excel数据流 || 使用Excel数据流的方式下载Excel

    背景: 在前端无法生成特殊的excel表格,或操作复杂的时候会通过后台进行生成excel.但是服务器的资源也非常宝贵,所以通过数据流的方式就可以实现:不在服务器存储的情况下,使前端成功下载excel文 ...

  5. codemirror-editor-vue3 编辑器只要换行保存就会有小红点

    先看示例 找了篇博客写的贼详细 https://blog.csdn.net/xujingyiss/article/details/118992763 只要设置这二个        let conten ...

  6. LangChain让LLM带上记忆

    最近两年,我们见识了"百模大战",领略到了大型语言模型(LLM)的风采,但它们也存在一个显著的缺陷:没有记忆. 在对话中,无法记住上下文的 LLM 常常会让用户感到困扰.本文探讨如 ...

  7. Redis数据类型有哪些?

    a.String(字符串) b.Hash(hash表) c.List(链表) d.Set(集合) e.SortedSet(有序集合zset)

  8. 燕千云AITSM重塑IT服务管理

    ​ IT服务经历了三个阶段,缘起于设备管理,兴起于灾难恢复,发展于IT服务管理.IT服务发展到目前的阶段,企业所使用的系统功能也由孤立的系统转变为综合的集成系统,IT服务所管理的对象也由核心业务转变为 ...

  9. 使用 Spring 实现控制反转和依赖注入

    使用 Spring 实现控制反转和依赖注入 概述 在本文中,我们将介绍IoC(控制反转)和DI(依赖注入)的概念,以及如何在Spring框架中实现它们. 什么是控制反转? 控制反转是软件工程中的一个原 ...

  10. Linux 内核:设备树 学习总结

    背景 之前写过设备树DTS 学习:学习总结(应用篇)的学习,但是是偏向于应用:这次针对了设备树的架构以及在驱动中的使用流程做了补充. 基于 Linux 内核 v4.14. 目录 标题 说明 设备树:d ...