1.创建一个PDF
Document document = new Document(rect);//创建一个Document
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("E:\\itext3.pdf"));//创建书写器(Writer) 与 document对象关联,通过书写器可以将文档写入磁盘中
document.open();//打开文档
document.add(new Paragraph("Hello iText"));// 写入文档内容
document.close();//关闭文档
2
public class SecondPdf {
public static void main(String[] args) throws DocumentException, IOException {
Rectangle rect = new Rectangle(PageSize.A4);// 设置页面大小
rect.setBackgroundColor(BaseColor.ORANGE);// 页面背景色
Document document = new Document(rect);// 创建一个Document
// 页边空白
document.setMargins(10, 20, 30, 40); // 左,右,上,下
PdfWriter writer = PdfWriter.getInstance(document,
new FileOutputStream("E:\\itext3.pdf"));// 创建书写器(Writer) 与
// document对象关联,通过书写器可以将文档写入磁盘中
writer.setPdfVersion(PdfWriter.PDF_VERSION_1_2);// 设置PDF版本(默认1.4)
writer.setEncryption("User".getBytes(), "Owner".getBytes(),
PdfWriter.ALLOW_MODIFY_CONTENTS,
PdfWriter.STANDARD_ENCRYPTION_128);// 设置密码需要包bcprov-jdk15on-147.jar
// 文档属性
document.addTitle("Title@sample"); // 标题
document.addAuthor("Author@nicaisheng");// 作者
document.addSubject("Subject@iText sample");// 主题
document.addKeywords("Keywords@iText");// 关键字
document.addCreator("Creator@iText");// 创建者
//设置字体
BaseFont bfChinese = BaseFont.createFont("STSong-Light",
"UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
Font fontChinese = new Font(bfChinese, 14, Font.BOLD);// 创建字体,设置family,size,style,还可以设置color
Font titleChinese = new Font(bfChinese, 20, Font.BOLD);
Font BoldChinese = new Font(bfChinese, 14, Font.BOLD);
Font subBoldFontChinese = new Font(bfChinese, 8, Font.BOLD);
document.open();// 打开文档
Paragraph title = new Paragraph("起租通知书", titleChinese);// 设置标题
title.setAlignment(Element.ALIGN_CENTER);// 设置对齐方式
title.setLeading(1f);// 设置行间距
document.add(title);
title = new Paragraph("致:XXX公司", BoldChinese);
title.setSpacingBefore(25f);// 设置段前空白宽度
document.add(title);
title = new Paragraph(
"贵我双方签署的编号为 XXX有关起租条件已满足,现将租赁合同项下相关租赁要素明示如下:", fontChinese);
title.setLeading(22f);
title.setFirstLineIndent(20f);// 设置首行缩进
document.add(title);
float[] widths = { 10f, 25f, 30f, 30f };// 设置表格的列宽和列数 默认是4列
PdfPTable table = new PdfPTable(widths);// 建立一个pdf表格
table.setSpacingBefore(20f);
table.setWidthPercentage(100);// 设置表格宽度为100%
PdfPCell cell = null;
//---表头
cell = new PdfPCell(new Paragraph("期次",subBoldFontChinese));//
cell.setFixedHeight(20);//设置单元格的高度
cell.setHorizontalAlignment(Element.ALIGN_CENTER);//设置水平居中
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);//设置垂直居中
table.addCell(cell);
cell = new PdfPCell(new Paragraph("租金日",subBoldFontChinese));
cell.setFixedHeight(20);//设置单元格的高度
cell.setHorizontalAlignment(Element.ALIGN_CENTER);//设置水平居中
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);//设置垂直居中
table.addCell(cell);
cell = new PdfPCell(new Paragraph("期租金金额",subBoldFontChinese));
cell.setFixedHeight(20);//设置单元格的高度
cell.setHorizontalAlignment(Element.ALIGN_CENTER);//设置水平居中
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);//设置垂直居中
table.addCell(cell);
cell = new PdfPCell(new Paragraph("各期租金后\n剩余租金",subBoldFontChinese));
cell.setFixedHeight(20);//设置单元格的高度
cell.setHorizontalAlignment(Element.ALIGN_CENTER);//设置水平居中
cell.setVerticalAlignment(Element.ALIGN_MIDDLE);//设置垂直居中
table.addCell(cell);
document.add(table);
document.newPage();//创建新页
document.add(new Paragraph("new Page"));
document.newPage();
document.add(new Paragraph("new Page2"));
document.close();// 关闭文档
}
}
bcprov-jdk15on-147.jar下载:
http://www.bouncycastle.org/latest_releases.html
分享到:
相关推荐
5. **使用示例**: 使用iTextPDF生成带表格和目录的中文PDF文档,通常会涉及以下步骤: - 引入必要的库:在项目中添加`iText-asian-5.2.0.jar`和`itextpdf-5.5.5.jar`。 - 创建PDF文档:使用`Document`类初始化一个...
在这个"Struts2+IText动态导出PDF示例源码"项目中,开发者利用这两者结合,实现了在Web应用中动态生成PDF文件的功能。这在报表生成、合同制作、证书打印等场景中非常实用。 首先,Struts2作为控制器层框架,负责...
本篇文章将详细介绍如何利用iText库操作PDF,从数据库中导出大量数据。 首先,我们需要理解iText的基本概念和功能。iText提供了丰富的API,可以用于创建新的PDF文档、添加文本、图像、表格、链接等元素,以及对已有...
Java使用IText库导出PDF是一项常见的任务,特别是在需要生成报告、文档或发票等静态内容时。IText是一个强大的PDF库,它允许开发者在Java环境中创建、修改和处理PDF文档。下面将详细介绍如何使用IText库来实现这个...
**ITextPDF库在Java中的应用:创建模板化的PDF文档** `iTextPDF`是一个流行的开源Java库,用于创建、编辑和操作PDF文档。在这个场景中,我们将探讨如何使用iTextPDF来根据模板生成包含表单、表格、条形码和二维码的...
Itext导出PDF,中文不显示字体,在body上设置font-family: "Arial Unicode MS",同时在java中引入fontResolver.addFont("/ARIALUNI.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); 就可以显示中文了
总结起来,"Velocity+Itext导出PDF"是一种高效且灵活的方式,可以将动态数据和预定义的模板结合,生成高质量的PDF文档。通过熟练掌握这两个工具的使用,开发者可以创建出满足各种需求的PDF文档生成系统。
在描述中提到的"itext html导出pdf",通常涉及到以下几个步骤: 1. **HTML解析**:首先,我们需要解析HTML内容。这通常通过第三方库如Jsoup或Apache POI完成,它们能够解析HTML文档并提取所需的数据结构。 2. **...
java使用iText导出PDF文本绝对定位(实现方法) iText是一个流行的Java类库,用于生成PDF文档。下面我们将探讨如何使用iText在Java中导出PDF文本,并实现绝对定位。 iText简介 iText是一个开源的Java类库,用于...
导出PDF的关键在于正确解析模板并填充内容。首先,需要创建一个`PdfReader`对象读取模板PDF,然后使用`PdfStamper`创建一个新的PDF,该对象允许我们对模板进行修改。通过`AcroFields`类的`getFields()`方法获取模板...
本文将深入探讨如何使用ITEXT库导出PDF和Word,以及利用Apache POI库导出Excel报表文件。 首先,让我们来了解ITEXT库。ITEXT是一个开源Java库,专门用于创建和修改PDF文档。使用ITEXT,你可以方便地生成包含文本、...
ITextRenderer renderer = new ITextRenderer(); ITextFontResolver fontResolver = renderer.getFontResolver(); fontResolver.addFont("C:/Windows/fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_...
这个简单的demo展示了如何利用Itext库将数据导出为PDF格式,非常适合初学者理解和实践。下面,我们将深入探讨这个知识点,以及如何一步步实现这个功能。 首先,你需要在你的项目中引入ItextSharp库。ItextSharp是...
下面将详细介绍iText库在导出PDF时涉及的一些关键知识点: 1. **创建PDF文档**:首先,你需要创建一个PdfWriter实例,它将连接到PDF输出流,如FileOutputStream。然后,通过PdfDocument和Document对象初始化PDF的...
本文将介绍一个使用iText库导出PDF的小例子。 首先,介绍iText库的基本知识。iText是一个开源的Java库,允许开发者创建和操纵PDF文档。它包括生成PDF文件、合并或分割现有PDF文件、添加文本或图像等功能。iText广泛...
在IT行业中,iText是一个广泛使用的Java库,用于创建、修改和操作PDF文档。这个库提供了丰富的API,使得开发者能够方便地将各种数据格式转换为PDF。在这个特定的场景下,我们关注的是如何使用iText将HTML内容转换为...
请注意,上述代码示例使用的是Itext 5.x版本,如果你使用的是更现代的Itext 7.x,API会有较大变化。在Itext 7中,你需要使用`PdfDocument`, `Document`, `PdfCanvas`和`PdfPageNumber`等类来完成相同的操作。 总的...
本示例将深入讲解如何利用iText库来导出PDF文件,以满足特定的需求。 首先,确保已将iText库添加到项目依赖中。通常,可以通过Maven或Gradle来引入。对于Maven项目,可以在pom.xml文件中添加以下依赖: ```xml ...
在标题中提到的"itext导出PDF所需jar包"是指使用iText库来生成PDF文件时所需的Java类库。iText允许开发者通过编程方式生成高质量的PDF文档,包括文本、图像、表格、链接等多种元素,适用于各种业务场景,如报表生成...
在Android平台上,生成和读取PDF文件是一项常见的需求,特别是在数据导出、报告生成或文档共享等场景。iText是一个强大的开源库,它允许开发者在Java和.NET环境中创建、编辑和处理PDF文档。在这个场景中,我们将探讨...