`

Itext, java export to PDF file

 
阅读更多

http://sourceforge.net/projects/itext/files/iText/iText5.3.3/

 

 

 

package com.test;

import java.awt.Color;
import java.io.FileOutputStream;

import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.Element;
import com.lowagie.text.Font;
import com.lowagie.text.PageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfPCell;
import com.lowagie.text.pdf.PdfPTable;
import com.lowagie.text.pdf.PdfWriter;

public class test2 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 System.out.println("done");
		  // 步骤 1: 创建一个document对象,大小为A4,上下左右边距都为36
		  Document document = new Document(PageSize.A4, 36, 36, 36, 36);
		  try {
			BaseFont bfChinese = BaseFont.createFont( "STSongStd-Light" ,  "UniGB-UCS2-H" ,  false);    
			Font fontChinese =  new  Font(bfChinese  ,  24 , Font.NORMAL, Color.GREEN);   
			fontChinese.setFamily("ZapfDingbats");
			fontChinese.setSize(24);
			Font headFont = new Font(bfChinese, 10, Font.BOLD);//设置字体大小 
		   // 步骤 2:
		   // 我们为document创建一个监听,并把PDF流写到文件中
		   PdfWriter.getInstance(document, new FileOutputStream(
		     "D:\\CellWidths.pdf"));
		   // 步骤 3:打开文档
		   document.open();
		   // 创建一个有4列的表格,它们之间的相关比率为 10%,10%,5%,75%
		   document.add(new Paragraph("We use 10%,10%,5%,75%:\n\n"));
		   
		   
		   float[] widths1 = {0.25f,0.1f,0.25f,0.1f,0.3f};
		   PdfPTable table1 = new PdfPTable(widths1);
		   table1.setTotalWidth(1000);
		   table1.setSpacingAfter(50);
		   table1.getDefaultCell().setBorder(0);
		   table1.setWidthPercentage(100);
		   table1.setHorizontalAlignment(Element.ALIGN_RIGHT);


		   Paragraph p1 = new Paragraph("我的家乡美啊我的家乡美啊我的家乡美啊我的家乡美啊我的家乡美啊我的家乡美啊我的家乡美啊",headFont);
		   table1.addCell(p1);
		   table1.addCell("");
		   table1.addCell(p1);
		   table1.addCell("");
		   table1.addCell(p1);
		   table1.addCell(p1);
		   table1.addCell("");
		   table1.addCell(p1);
		   table1.addCell("");
		   table1.addCell(p1);
		   document.add(table1);
		   
		   float[] widths = { 0.1f, 0.1f, 0.05f, 0.75f };
		   PdfPTable table = new PdfPTable(widths);
//		   table.getDefaultCell().setBorder(0);
		   table.addCell("10%");
		   table.addCell("10%");
		   table.addCell("5%");
		   table.addCell("75%");
		   table.addCell("aa");
		   table.addCell("aa");
		   table.addCell("a");
		   table.addCell("aaaaaaaaaaaaaaa");
//		   table.getDefaultCell().setBorder(1);
		   table.addCell(new Paragraph("Taony125 testPdf 中文字体",headFont));
		   table.addCell("bb");
		   table.addCell("b");
		   
		   PdfPCell cell = new PdfPCell(new Paragraph("Taony125 testPdf 中文字体",headFont));//建立一个单元格
//		   cell.setBorder(0);
		   cell.setBackgroundColor(Color.LIGHT_GRAY);
		   table.getRowHeight(100);
		   table.addCell(cell);
		   table.addCell("cc");
		   table.addCell("cc");
		   table.addCell("c");
		   table.addCell("ccccccccccccccc");
		   // 把定义好的表格增加到文档中
		   document.add(table);
		   Paragraph p = new Paragraph("We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%We change the percentages,20%,20%,10%,50%:\n\n");
		   p.setIndentationLeft(80);
		   p.setFirstLineIndent(20);
		   document.add(p);
		   document.add(new Paragraph("We change the\n percentages,20%,20%,10%,50%:\n\n"));
		   // 修改表格列关联比 ,现在为20%,20%,10%,50%
		   widths[0] = 20f;
		   widths[1] = 20f;
		   widths[2] = 10f;
		   widths[3] = 50f;
		   // 这句完成了表格列宽的修改
		   table.setWidths(widths);
//		   table.setSpacingBefore(0);
//		   table.setSpacingAfter(0);
		   document.add(table);
		   // 再改变,使用绝对宽度
		   widths[0] = 40f;
		   widths[1] = 40f;
		   widths[2] = 20f;
		   widths[3] = 300f;
		   // 定义右边距和上边距
//		   Rectangle r = new Rectangle(PageSize.A4.right(72), PageSize.A4
//		     .top(72));
//		   table.setWidthPercentage(widths, r);
		   document.add(new Paragraph(
		     "We change the percentage using absolute widths,40,40,20,300:\n\n"));
		   document.add(table);
		   // 使用一个固定的大小
		   document.add(new Paragraph("We use a locked width,300:\n\n"));
		   // 设置表格宽度
		   table.setTotalWidth(300);
		   table.setLockedWidth(true);
		   table.setSpacingAfter(200);
		   document.add(table);
		   
		   Font myFont = new Font(Font.STRIKETHRU, 40,Font.BOLD); // name & point size
		   Chunk bar = new Chunk("My String", myFont );
		   Paragraph paragraph = new Paragraph();
		   paragraph.add(bar);
		   document.add(paragraph);
		  } catch (Exception de) {
		   de.printStackTrace();
		  }
		  // 步骤 5:关闭文档
		  document.close();
		  System.out.println("done!");
		 }


}

 

 

 

js 数组

 

http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930499.html

分享到:
评论

相关推荐

    JAVA使用itextpdf实现HTML转PDF

    本主题聚焦于使用Java的iTextPDF库来完成这个任务。iTextPDF是一个强大的Java库,允许开发人员创建、修改和优化PDF文档。 首先,我们需要了解HTML和PDF之间的差异。HTML是一种标记语言,用于构建和设计网页,而PDF...

    java使用itext实现pdf文件下载

    String filePath = "path/to/your/pdf/file.pdf"; FileInputStream fis = null; try { fis = new FileInputStream(filePath); response.setHeader("Content-Disposition", "attachment; filename=" + "file.pdf...

    java使用itext导出PDF文本绝对定位(实现方法)

    java使用iText导出PDF文本绝对定位(实现方法) iText是一个流行的Java类库,用于生成PDF文档。下面我们将探讨如何使用iText在Java中导出PDF文本,并实现绝对定位。 iText简介 iText是一个开源的Java类库,用于...

    java使用itextpdf、itext-asian对pdf文件加水印

    首先,iTextPDF是Java的一个开源库,用于创建、编辑和读取PDF文档。它提供了丰富的API,可以实现PDF文档的各种操作,如添加文本、图像、表格等,以及水印功能。而iText-Asian是iTextPDF的一个扩展,主要目的是支持...

    Java 使用itext将html转pdf并下载demo

    iText是一个流行的Java库,专门用于创建和编辑PDF文档。这个“Java使用iText将html转pdf并下载demo”的主题将深入讲解如何使用iText库实现这一功能。 首先,我们需要理解iText的基本用法。iText库提供了多种API,...

    利用ITEXT、PDFBOX将PDF转为图片

    首先,ITEXT是一个用于创建、修改和阅读PDF文档的Java库。它可以用于生成PDF报告、填充PDF表单、提取文本和图像等。在我们的场景中,ITEXT主要用于读取PDF文档的内容。 接下来,PDFBOX是Apache软件基金会的一个开源...

    iText_pdf.rar_iText pdf_itext PDF类

    iText是一款广泛使用的Java库,专门用于创建和编辑PDF(Portable Document Format)文件。这个类库使得开发者能够方便地在应用程序中集成PDF生成和修改功能,而无需深入了解PDF的复杂规格。标题中的“iText_pdf.rar_...

    利用Itext实现html转pdf

    Itext是一个强大的PDF处理库,它提供了多种功能,包括创建、修改和解析PDF文档。在这个场景中,我们将讨论如何利用Itext库在不修改源代码的情况下,实现HTML到PDF的转换,并处理换行问题。 首先,我们需要理解Itext...

    itext将图片生成PDF(高清版)

    `iText`是一个强大的Java库,专门用于创建、编辑和处理PDF文档。本教程将详细介绍如何使用`iText`将图片转换为高清PDF,并提供一个无坑版的demo示例。 首先,我们需要理解`iText`库的核心概念。`iText`提供了丰富的...

    itextpdf java 转pdf jar 包

    iTextPDF是一款强大的Java库,专门用于创建、编辑和修改PDF文档。在Java开发中,如果你需要将数据或内容转换为PDF格式,iTextPDF是一个非常流行的选择。这个库提供了丰富的API,允许开发者以编程方式生成高质量的PDF...

    java通过itext操作pdf模板写入pdf合同数据

    Java通过iText库操作PDF模板来写入PDF合同数据是一项常见的技术任务,尤其在文档自动化处理和企业级应用中。iText是一个强大的PDF处理库,它允许开发者创建、修改和处理PDF文档。在这个过程中,首先我们需要一个PDF...

    adobe pdf编辑器 java利用itextpdf根据模板导出pdf配套资源

    总之,Adobe PDF编辑器与Java的iTextPDF库结合,为企业提供了灵活且高效的PDF文档处理方案,无论是简单的内容替换还是复杂的文档生成,都能满足需求。在实际项目中,应根据业务场景选择合适的方法,优化代码以提高...

    Java解决Itext pdf中文不显示问题

    在Java开发中,Itext是一个常用的库,用于创建、编辑和读取PDF文档。然而,当处理中文字符时,Itext可能会出现不显示或者显示乱码的问题。这个问题主要是由于PDF编码格式与Java字符串编码不匹配导致的。下面将详细...

    java Itext 将tif转换成PDF 包含多页

    本篇将深入讲解如何使用Java和iText库将多页的TIFF(Tagged Image File Format)文件转换为多页的PDF(Portable Document Format)文件。首先,让我们了解下相关的知识点。 **1. TIFF 文件格式** TIFF是一种灵活的...

    iText Java生成PDF 加密 水印 - glen的日志 - 网易博客

    iText Java生成PDF 加密 水印 - glen的日志 - 网易博客

    itext5.4.2 html2pdf

    iText是一个著名的Java库,专门用于处理PDF文档,而其5.4.2版本引入了对HTML到PDF转换的支持,特别强调了对中文字符的完美呈现,解决了以往许多转换工具在处理中文时出现的问题。 首先,我们来了解iText 5.4.2的...

    itext 生成pdf 目录

    iText 是一个强大的Java库,专门用于创建和修改PDF文档。在PDF文档中,目录(或书签)是用户友好的导航工具,可以帮助读者快速跳转到特定章节或页面。本篇文章将深入探讨如何使用iText来生成PDF的目录。 首先,理解...

    Java通过IText导出word和pdf所有jar

    标题提到的"Java通过IText导出word和pdf所有jar",意味着这个压缩包可能包含了一系列必要的Java库,这些库用于通过IText库导出PDF以及可能通过其他库(如Apache POI)导出Word文档。"包括spring相关jar"表明这个包还...

    iText-Java实现pdf

    iText 是一个强大的Java库,专门用于处理PDF文档。它提供了丰富的API,使得开发者能够创建、编辑、修改和解析PDF文件。在这个主题中,我们将深入探讨如何使用iText在Java环境中实现PDF转换。 首先,iText的核心库是...

    利用poi+itextpdf进行word转pdf.zip

    将word转换成pdf确实有很多种方案!最近正好需要做一个这样的功能,需求是将word模板进行签名后转换为pdf。...这里记录一下最终的方案:利用poi+itextpdf进行word转pdf。此资源按包含源码和maven依赖。

Global site tag (gtag.js) - Google Analytics