当前位置: 首页 > news >正文

品牌型网站开发百度热门关键词排名

品牌型网站开发,百度热门关键词排名,wordpress如何显示摘要,唐山培训网站建设由于工作需要,要从pdf文件中提取出图片保存到本地,项目中就引用到了Apache PDFBox库。 1 什么是Apache PDFBox? Apache PDFBox库,一个用于处理PDF文档的开源Java工具。它允许用户创建全新的PDF文件,操作现有的PDF文档&#xff0…

        由于工作需要,要从pdf文件中提取出图片保存到本地,项目中就引用到了Apache PDFBox库。

1 什么是Apache PDFBox?

        Apache PDFBox库,一个用于处理PDF文档的开源Java工具。它允许用户创建全新的PDF文件,操作现有的PDF文档,以及从PDF文件中提取内容等。

1.1 Apache PDFBox的主要功能

  • Extract Text:从PDF文件中提取Unicode文本。
  • Split & Merge:将单个PDF拆分成多个文件,或将多个PDF文件合并为一个文件。
  • Fill Forms:从PDF表单中提取数据或填写PDF表单。
  • Preflight:根据PDF/A-1b标准验证PDF文件。
  • Print:使用标准Java打印API打印PDF文件。
  • Save as Image:将pdf文件保存为图像文件,如PNG或JPEG。
  • Create PDFs:从头开始创建新的PDF文件,包含嵌入字体和图像。
  • Signing:对PDF文件进行数字签名。

1.2 Apache PDFBox的组件

1.3 Apache PDFBox相关依赖

PDFBox版本JDK最低版本Maven版本
PDFBox4.0.0-SNAPSHOTJDK 11Maven 3
PDFBox 3.0.xJDK 8
(目前测试进行到Java 19)
Maven 3
PDFBox 2.0.xJDK 7Maven 3

2 从pdf中提取图片代码实现

2.1 SpringBoot工程引入依赖

该SpringBoot项目使用Java8。

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.21</version>
</dependency><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.29</version>
</dependency>

2.2 测试代码

import org.apache.pdfbox.cos.COSName;  
import org.apache.pdfbox.pdmodel.PDDocument;  
import org.apache.pdfbox.pdmodel.PDPage;  
import org.apache.pdfbox.pdmodel.PDResources;  
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;  import javax.imageio.ImageIO;  
import java.awt.image.BufferedImage;  
import java.io.File;  
import java.io.FileOutputStream;  
import java.io.IOException;  
import java.util.Iterator;public class PdfGetJpg {public static void main(String[] args) {// 创建文件对象File file = new File("C:\\test.pdf");export(file);}private static void export(File file) {String fileName = file.getName().substring(0, file.getName().indexOf('.'));PDDocument document = null;try {//解析PDF并加载document =  PDDocument.load(file);//获取索引为0的页面(也就是获取第一页)PDPage page = document.getPage(0); // 可以通过获取页数进行循环每一页//获取页面所需的任何资源的字典PDResources resources = page.getResources();//返回XObject资源的名称Iterable<COSName> cosNames = resources.getXObjectNames();if(cosNames != null) {Iterator<COSName> cosNameIterator = cosNames.iterator();while (cosNameIterator.hasNext()) {COSName cosName = cosNameIterator.next();//判断给定名称的XObject资源是否为图像if(resources.isImageXObject(cosName)) {PDImageXObject pdImage = (PDImageXObject) resources.getXObject(cosName);BufferedImage image = pdImage.getImage();try(FileOutputStream fileOutputStream = new FileOutputStream(file.getParentFile().getAbsolutePath()+ File.separator + fileName + ".jpg")) {//输出图片到指定位置ImageIO.write(image, "jpg", fileOutputStream);fileOutputStream.flush();} catch (IOException e) {System.out.println("输出文件失败:" + fileName + e.getMessage());}}}}} catch (IOException e) {System.out.println("提取失败:" + fileName);} finally {try {document.close();} catch (IOException e) {e.printStackTrace();}}}}

PDFBox的其他操作具体可查看API文档:

感谢你看到了现在,最后别忘了点个赞哦!

http://www.hrbkazy.com/news/41960.html

相关文章:

  • 有域名了 怎么做网站珠海百度搜索排名优化
  • 大庆 网站制作网站搜索引擎优化诊断
  • 上海徐汇网站建设公司最新热搜新闻事件
  • 网站忧化 推广同时做网站产品怎么优化
  • 毕业设计做音乐网站可以吗seo优化关键词是什么意思
  • 哪个大学的网站做的最好看seo和sem的关系
  • 胶州家园网站建设在线推广网站的方法
  • 耒阳住房与建设局网站外贸推广营销公司
  • c2c网站有哪些地推项目平台
  • 品牌型网站的设计正规优化公司哪家好
  • 大型网站建设网络推广公司十大排名
  • 温州市手机网站制作哪家便宜哪里有免费的网站推广服务
  • 免费做公司网站免费注册个人网站不花钱
  • 成都解放号网站建设域名注册查询系统
  • 云平台网站优化引流app推广软件
  • 装饰设计网站大全青岛的seo服务公司
  • 宁国市网站关键词优化外包南京今日新闻头条
  • 做asp网站需要的实验报告单立即优化在哪里
  • 厦门网站建设哪家强安徽网站推广
  • 专业网站建设推荐网店推广的作用是什么
  • 直销公司有哪些专业的网站优化公司排名
  • 先做网站还是做APP营销软文100字
  • 济南网站建设(力选聚搜网络)自助建站官网
  • 珠海seo网站建设国外广告联盟平台
  • 做网站什么时候注册商标南宁百度关键词推广
  • 织梦安装网站后图片seo是哪个英文的简写
  • 新闻资讯网站备案bt最佳磁力搜索引擎
  • 用vs做网站在安装时要勾选河南新闻头条最新消息
  • 门户网站建设构架合肥seo整站优化网站
  • 北京企业官网网站建设哪家好搜狗首页排名优化