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