note6:spire.pdf免费版

2024-01-28 07:50
文章标签 pdf spire 免费版 note6

本文主要是介绍note6:spire.pdf免费版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、实现功能:对pdf文件抽取出指定页进行处理

2、问题:spire.pdf免费版不能处理超过10页的文件

<dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf.free</artifactId><version>5.1.0</version>
</dependency>

【截图在公司内部软件上,不能外传,大概就是在文件第11页会显示:

spire.pdf

Tree version is limited to 10 pages of PDF。

This limitation is enforced during loading and creating files.

When converting PDF to image, the first 10 pages of PDF files will be converted to Image format successfully.

Upgrade to Commecial edition of Spire.pdf(http://www.e-icebule.com/Introduce/pdf-for-java.html) 】

上图是商业版的收费价格。

3、解决:

换maven依赖包:itextpdf

实现方法如下:

/**
*pdfBytes文件
*list位置坐标 格式:页数,横坐标,纵坐标,缩放大小 eg:1,100,100,30
*imageBytes待插入图片
*在文件的指定页中插入图片
*/
public static byte[] mergeImageByte(byte[] pdfBytes,List<String> list,byte[] imageBytes) throws Exception{ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();//读取源文件PdfReader pdfReader = new PdfReader(pdfBytes);PdfStamper stamper = new PdfStamper(pdfReader,byteArrayOutputStream);//pdf页数int count = pdfReader.getNumberOfPages();//插入的图片Image contractImg = Image.getInstance(imageBytes);for(int i =0;i<list.size();i++){String str = (String)list.get(i);   //如果盖多页则分开处理String[] split = str.split(","); // 取出一组坐标中的元素int page = Integer.parseInt(split[0]);int x = Integer.parseInt(split[1]);int y = Integer.parseInt(split[2]);int point = Integer.parseInt(split[3]);//将图片放在pdf文件的第page页PdfContentByte pages = stamper.getOverContent(page);pages.saveState();PdfGState pdfGState = new PdfGState();//设置图片的透明度pdfGState.setFillOpacity(1.2F);pages.setGState(pdfGState);//图片缩放int width = (int)Math.round(contracting.getWidth()*point*0.01);int height = (int)MAth.round(contracting.getHeight()*point*0.01);//设置图片在PDF该页中的位置Rectangle pagesize = pdfReader.getPageSize(idx);int pageHeight = (int)pagesize.getHeight();int pageWidth = (int)pageSize.getWidth();contractImg.setAbsolutePosition(pagewidth-width-x,pageHeight-height-y);//设置图片的大小contractImg.scaleAbsolute(width, height);//将图片添加到pdf文件中pages.addImage(contractImg);pages.restoreState();stamper.setFormFlattening(true);
}stamper.close();pdfReader.close();byteArrayOutputStream.close();return byteArrayOutputStream.toByteArray();}

这篇关于note6:spire.pdf免费版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/652967

相关文章

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Python实现合并与拆分多个PDF文档中的指定页

《Python实现合并与拆分多个PDF文档中的指定页》这篇文章主要为大家详细介绍了如何使用Python实现将多个PDF文档中的指定页合并生成新的PDF以及拆分PDF,感兴趣的小伙伴可以参考一下... 安装所需要的库pip install PyPDF2 -i https://pypi.tuna.tsingh

Python实现PDF与多种图片格式之间互转(PNG, JPG, BMP, EMF, SVG)

《Python实现PDF与多种图片格式之间互转(PNG,JPG,BMP,EMF,SVG)》PDF和图片是我们日常生活和工作中常用的文件格式,有时候,我们可能需要将PDF和图片进行格式互转来满足... 目录一、介绍二、安装python库三、Python实现多种图片格式转PDF1、单张图片转换为PDF2、多张图

java导出pdf文件的详细实现方法

《java导出pdf文件的详细实现方法》:本文主要介绍java导出pdf文件的详细实现方法,包括制作模板、获取中文字体文件、实现后端服务以及前端发起请求并生成下载链接,需要的朋友可以参考下... 目录使用注意点包含内容1、制作pdf模板2、获取pdf导出中文需要的文件3、实现4、前端发起请求并生成下载链接使

基于Python开发PDF转PNG的可视化工具

《基于Python开发PDF转PNG的可视化工具》在数字文档处理领域,PDF到图像格式的转换是常见需求,本文介绍如何利用Python的PyMuPDF库和Tkinter框架开发一个带图形界面的PDF转P... 目录一、引言二、功能特性三、技术架构1. 技术栈组成2. 系统架构javascript设计3.效果图

基于Python实现一个PDF特殊字体提取工具

《基于Python实现一个PDF特殊字体提取工具》在PDF文档处理场景中,我们常常需要针对特定格式的文本内容进行提取分析,本文介绍的PDF特殊字体提取器是一款基于Python开发的桌面应用程序感兴趣的... 目录一、应用背景与功能概述二、技术架构与核心组件2.1 技术选型2.2 系统架构三、核心功能实现解析

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

使用Python创建一个能够筛选文件的PDF合并工具

《使用Python创建一个能够筛选文件的PDF合并工具》这篇文章主要为大家详细介绍了如何使用Python创建一个能够筛选文件的PDF合并工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录背景主要功能全部代码代码解析1. 初始化 wx.Frame 窗口2. 创建工具栏3. 创建布局和界面控件4

Python进行PDF文件拆分的示例详解

《Python进行PDF文件拆分的示例详解》在日常生活中,我们常常会遇到大型的PDF文件,难以发送,将PDF拆分成多个小文件是一个实用的解决方案,下面我们就来看看如何使用Python实现PDF文件拆分... 目录使用工具将PDF按页数拆分将PDF的每一页拆分为单独的文件将PDF按指定页数拆分根据页码范围拆分