,,Java使用iTextPDF生成PDF文件的实现方法

,,Java使用iTextPDF生成PDF文件的实现方法

这篇文章主要介绍了Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)使用iTextPDF生成便携文档格式文件的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

iText介绍和说明

因为项目需要生成便携文档格式文件,所以去找了一下能够生成便携文档格式的Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)工具,看到了iText可以说好评如潮。

如果你想通过Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)操作便携文档格式文件,那么iText绝对是你的首选。

引入依赖

这里使用的是iText5

属国

groupIdcom.itextpdf/groupId

artifactIditextpdf/artifactId

版本5 .5 .10/版本

/依赖关系

属国

groupIdcom.itextpdf/groupId

人工文本-亚洲/artifactId

版本5 .2 .0/版本

/依赖关系

使用步骤简单介绍

快速入手iText拢共需要5步:

创建文档实例文件

获取PdfWriter实例(需要指定文件实例和可移植文档格式文件的扩展名(可移植文档格式的缩写)生成的磁盘路径)

打开文档

添加段落内容

关闭操作文档实例(操作完成后必须执行文档关闭操作)

创建工具类

公共类PdfUtil {

//标准字体

公共静态字体普通字体

//加粗字体

公共静态字体粗体字体

//固定高

公共静态浮动固定高度=27f

//间距

公共静态int间距=5;

静态{

尝试{

BaseFont BF中文=基本字体。创建字体(' ST song-Light ',' UniGB-UCS2-H ',基本字体.未_嵌入);

NORMALFONT=new FONT(bfChinese,10,FONT .正常);

BOLDFONT=新字体(BF中文,14,字体。粗体);

} catch(异常e) {

e。printstacktrace();

}

}

公共静态文档createDocument() {

//生成可移植文档格式文件的扩展名(可移植文档格式的缩写)

Document=新文档();

//页面大小

矩形矩形=新矩形(页面大小.a4);

//页面背景颜色

长方形。设置背景色(基色.白色);

document.setPageSize(矩形);

//页边距左,右,上,下

document.setMargins(20,20,20,20);

返回文档;

}

/**

* @param text段落内容

* @返回

*/

公共静态段落创建段落(字符串文本,字体字体){

段落元素=新段落(文本、字体);

元素。set spacing before(5);

元素。setspacingfafter(5);

元素。setspacingfafter(间距);

返回元素;

}

公共静态字体createFont(int fontNumber,int fontSize,BaseColor fontColor) {

//中文字体-不然中文会乱码

BaseFont bf=null

尝试{

BF=BaseFont。创建字体(' ST song-Light ',' UniGB-UCS2-H ',基本字体.未_嵌入);

返回新字体(bf,fontNumber,fontSize,字体颜色);

} catch(异常e) {

e。printstacktrace();

}

返回新字体(bf,Font .默认大小,字体。正常,基色。黑色);

}

/**

* 隐藏表格边框线

*

* @param单元格单元格

*/

公共静态无效禁用边框(pdf单元格单元格){

如果(细胞!=null) {

细胞。禁用border side(1);

细胞。禁用border side(2);

细胞。禁用border side(4);

细胞。禁用border side(8);

}

}

/**

* 创建居中得单元格

*

* @返回

*/

公共静态pdf单元格createCenterPdfPCell(){

pdf cell cell=new pdf cell();

cell.setVerticalAlignment(元素. ALIGN _ MIDDLE);

cell.setHorizontalAlignment(元素. ALIGN _ CENTER);

细胞。setfixedheight(固定高度);

返回单元格;

}

/**

* 创建指定文字得单元格

*

* @param text

* @返回

*/

公共静态pdf单元格createcenterpdfcell(String text,int rowSpan,int colSpan,Font font) {

pdf cell单元格=新的pdf cell(新段落(文本,字体));

cell.setVerticalAlignment(元素. ALIGN _ MIDDLE);

cell.setHorizontalAlignment(元素. ALIGN _ LEFT);

细胞。setfixedheight(固定高度);

细胞。setrowspan(行跨度);

细胞。setcolspan(科尔斯潘);

返回单元格;

}

/**

* @param len表格列数

* @返回

*/

公共静态pdf表格createPdfPTable(int len){

pdf FP table pdf FP table=new pdf FP table(len);

pdfPTable.setSpacingBefore

pdf表格。设置水平对齐方式(元素.ALIGN _ CENTER);

返回pdf表格

}

}

创建controller进行测试

/**

* @作者王

* @版本1.0

* @日期2020年6月28日3时17分下午

*/

@RestController

@RequestMapping('/pdf ')

公共类PdfController {

@RequestMapping('/generate ')

公共响应生成pdf(http servlet响应响应)引发异常{

字符串文件名='测试' pdf ';

//设置下载格式为可移植文档格式文件的扩展名(可移植文档格式的缩写)

回应。设置内容类型(“应用程序/x-下载”);

回应。添加标头(' Content-Disposition ',' attachment filename=' URL encoder . encode(文件名,‘UTF-8’)’.pdf’);

输出流OS=new BufferedOutputStream(响应。获取输出流());

//1.Document=新文档();

document=pdfutil。创建文档();

//2.获取作者

PdfWriter.getInstance(文档,OS);

//3.打开()

文档。open();

//设置字体

Font black Font=pdfutil。创建字体(10,字体.正常,基色。黑色);

Font blue Font=pdfutil。创建字体(10,字体.正常,基色。蓝色);

Font big Font=pdfutil。创建字体(14,字体.正常,基色。黑色);

Font little Font=pdfutil。创建字体(10,字体.正常,基色。黑色);

paragraph title=pdfutil。创建段落('测试pdf ',大字体);

title.setAlignment(元素. ALIGN _ CENTER);

//4.添加段落内容

文档.添加(标题);

//5.关闭()

document.close().

OS。close();

返回新响应()。setContent("成功");

}

}

运行结果

下载页面:

下载的文件效果:

到此这篇关于Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)使用iTextPDF生成便携文档格式文件的实现方法的文章就介绍到这了,更多相关Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)使用iTextPDF生成便携文档格式内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • php读取pdf数据,php pdf读取
  • php读取pdf数据,php pdf读取,PHP中使用mpdf 导出PDF文件的实现方法
  • kotlon协程,深入理解kotlin协程pdf,一文彻底搞懂Kotlin中的协程
  • 深入解析C#(第4版),深入解析css pdf,深入解析contentWindow, contentDocument
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf,Java 反射机制原理与用法详解
  • ,,Python利用PyMuPDF实现PDF文件处理
  • 漫画算法小灰的算法之旅pdf,漫画算法2-小灰的算法进阶
  • devops和自动化运维实践 PDF,devops思想在运维方面的具体实践
  • pdf如何去除水印,pdf去水印的三种方法
  • 把a4的内容打印成a3小册子,a4的pdf文档如何打印成a3
  • nlp自然语言处理入门pdf,精通python自然语言处理 pdf
  • 容器docker基本操作,每天5分钟玩转docker容器技术 pdf
  • sklearn中文手册pdf下载,sklearn库模块及函数
  • ros机器人教程,ros机器人编程原理与应用下载 pdf 纽曼
  • 留言与评论(共有 条评论)
       
    验证码: