首页 > 其他分享 >PDF截取指定页数

PDF截取指定页数

时间:2023-04-19 21:46:48浏览次数:39  
标签:文件 截取 ByteArrayOutputStream 页数 itextpdf new PDF

今天做了一个新需求,需要截取一个pdf的最后一页...

在面向百度编程之后呢,,也是成功实现了这个需求,,在这里将代码记录一下,,以后要是遇到类似的需求也可以回来搬一下!

首先是导入一下依赖

<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.4.3</version>
</dependency>

其实这个问题也是比较简单的,只需要在我们原有的文件下载方法里,,获取到原文件后进行一个截取就行了,,

我的思路就是将获取到的文件流(inputStream)进行剪裁,,下面就是我的一个简单的工具类,,

参数主要有4个:InputStream,ByteArrayOutputStream,begin(开始截取页数),end(截止页数)

在调用之前,我们只需要先new一个ByteArrayOutputStream 对象,.即ByteArrayOutputStream out = new ByteArrayOutputStream()

然后将需要截取的文件流和ByteArrayOutputStream 对象以及截取的区间传进去,就能得到处理好的文件了,然后通过InputStream newInputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());

就能得到新的文件流,这样就可以在不改变原有逻辑的情况下截取我们想要的文件了

nice!收工下班!

标签:文件,截取,ByteArrayOutputStream,页数,itextpdf,new,PDF
From: https://www.cnblogs.com/chengjie9527/p/17334689.html

相关文章

  • 浏览器打开有些pdf内容不全、打开有些论文页很多红色绿色的框
    问题问题1:edge浏览器打开pdf,只能看到表格,看不到表格里的字,用其他浏览器打开或者pdf阅读器打开都能看到完整的表格内容。问题2:用edge浏览器看pdf论文的时候,会有很多红色或绿色的框,比如:问题产生原因偶然间,我发现导致这些问题是因为我安装的“侧边翻译”插件,由于之前看网页中......
  • gotenberg+ chromiumly + pdf.js 进行office 文档转换以及预览处理
    日常中office预览是一个比较常见的问题,基于微软的officeonline是一个选择,但是移动端效果不是很好就有pdf以及一些基于生成图片的方案也是不错的,以下是基于gotenberg+chromiumly的一个尝试简单说明gotenberg是基于golang开发的包装了Chromium以及LibreOffice的基于api......
  • 关于shell变量值的截取-通过分隔符-去除前后匹配到的内容
    最近在工作中需要取一个变量的一部分值,举例说明,先看一个变量及值的格式,如Server="1.1.1.1-server01"我们可以通过各种支持切片的命令得到server01这一段,如cut,sed,awk等等命令其实当熟悉shell编程的可以知道,shell内部的变量处理方式也是可以得到的,可以通过echo${Server#*-}的......
  • 字符串截取
    字符串截取字符串截取方法splist()方法,将字串切割为若干部分,返回值为一个字符串数组.()里面其实是一个正则表达式.正则表达式注意,如果要按照.切分需要两个(反斜杠)代码示例publicclassDemo03{publicstaticvoidmain(String[]args){Stringstr1="......
  • Puppeteer+RabbitMQ:Node.js 批量加工pdf服务架构设计与落地
    全文约8500字,阅读时长约10分钟。智慧作业最近上线「个性化手册」(简称个册)功能,一份完整的个性化手册分为三部分:•学情分析:根据学生阶段性的学习和考试情况进行学情分析、归纳、总结,汇总学情数据;•精准推荐:推荐算法基于学情数据结合知识图谱进行精准练习题推荐;•错题回顾:错题的......
  • Python fitz 'Document' object has no attribute 'convertToPDF'
    最近在自学python有个png转PDF的需求,然后网站找了下。defpng2pdf(name):imgdoc=fitz.open(name)pdfbytes=imgdoc.convertToPDF()#使用图片创建单页的PDFimgpdf=fitz.open("pdf",pdfbytes)imgpdf.save(name[:-4]+'.pdf')......
  • PDFsam basic免费开源pdf编辑器
    PDFtk、PDFsam可以根据PDF中的信息分割合并PDF,免费版本就可以做到!由于PDFtk只提供了安装包,PDFsam有便携免安装的版本,basic免费,enhanced版本收费。https://github.com/torakiki/pdfsam/releasesPDFsam官网:(https://pdfsam.org/)基础版的下载页面:(https://pdfsam.org/download......
  • 打印pdf 前端请求数据并打印pdf文件
    1、参考vue接收后端传来的pdf文件流,前端调用预览PDF2、原理3、代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>pdf</title></head><div><inputstyle="display:none&q......
  • 小白用chatgpt编写python 爬虫程序代码 抓取网页数据(js动态生成网页元素)
    jS动态生成,由于呈现在网页上的内容是由JS生成而来,我们能够在浏览器上看得到,但是在HTML源码中却发现不了一、注意:代码加入了常规的防爬技术    如果不加,如果网站有防爬技术,比如频繁访问,后面你会发现什么数据都取不到1.1 模拟请求头: 这里入进入一步加强,随机,主要是User-Agen......
  • js将后端返回的文件流导出,并自定义下载文件名(pdf导出)
    这里调接口时记得加上responseType:'blob'/***@description:下载文件*@param{string}data文件流*@param{string}filename文件名*@return{*}*/exportfunctiondownloadFile(data:string,filename:string){constblob=newBlob([data])const......