`
zhouxianglh
  • 浏览: 264170 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

iText 创建 PDF

    博客分类:
  • J2SE
阅读更多

前些日子搞  doc 转 PDF.头大.没什么进展.今天把PDF 看了一下.方法许多,选了这一种.

这些解决方案不完整.好烦.

package com.isw2.pdf.test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Date;

import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Font;
import com.lowagie.text.Paragraph;
import com.lowagie.text.html.simpleparser.HTMLWorker;
import com.lowagie.text.html.simpleparser.StyleSheet;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfWriter;

public class TestPDF {
	public static void main(String[] args) {
		// createPDFbyIText("good good study ,day day up!好好学习,天天向上!",
		// "C:/test/test.pdf");
		createPDFbyHTML("c:/test/good.html", "C:/test/test.pdf");
	}

	/**
	 * HTML 方式写入 PDF .(本人暂时不能解决中言乱码问题)
	 * @param htmlContent
	 * @param outPath
	 */
	public static void createPDFbyHTML(String htmlContent, String outPath) {
		try {
			StyleSheet st = new StyleSheet();
			st.loadTagStyle("body", "leading", "16,0");
			BaseFont bfTitle = BaseFont.createFont("STSong-Light",
					"UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
			Font titleFont = new Font(bfTitle, 18, Font.NORMAL);
			Document document = new Document();
			PdfWriter.getInstance(document, new FileOutputStream(outPath));
			document.open();
			ArrayList list = HTMLWorker.parseToList(
					new FileReader(htmlContent), st);
			for (Object object : list) {
				document.add((Element) object);
			}
			document.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (DocumentException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	/**
	 * 写入 PDF 文件.
	 * @param content
	 * @param outPath
	 */
	public static void createPDFbyIText(String content, String outPath) {
		try {
			//字体
			BaseFont bfTitle = BaseFont.createFont("STSong-Light",
					"UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
			Font titleFont = new Font(bfTitle, 18, Font.NORMAL);
			OutputStream outputStream = new FileOutputStream(new File(outPath));
			Document document = new Document();
			PdfWriter.getInstance(document, outputStream);
			document.open();
			document.add(new Paragraph(content, titleFont));// 设置字体可解决中方问题
			document.add(new Paragraph("\n 你一定可以."));// 中文无法正常显示
			document.add(new Paragraph(new Date().toString()));
			document.addAuthor("zhouxianglh");
			document.addTitle("good study");
			document.close();
			outputStream.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (DocumentException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

 

今天也小郁闷,犯了两个错误.老大很生气.一个是用了过时的方法,第二个是代码晦涩.优秀是一种习惯.要好好加油呀.才刚刚开始.冯晶晶那也在搞这,搞的咋样了?在想.学习不能止步.好好加油!

分享到:
评论

相关推荐

    iText创建pdf中文文档.doc.zip

    iText五部创建pdf,文档中详细讲解了创建的过程。资源很详细很详细!!

    itext 生成pdf 目录

    itext 生成pdf 目录,itext 生成pdf 目录,itext 生成pdf 目录

    itext对pdf进行编辑

    itext对pdf进行编辑.使用Adobe对pdf创建表单,itext对表单填充,下拉选,单选,文本框.复选框.itext对pdf进行编辑.使用Adobe对pdf创建表单,itext对表单填充,下拉选,单选,文本框.复选框

    iText创建表格pdf教程.doc

    iText创建表格pdf的教程,使用pdfptable创建表单!

    itext解析pdf全能最新jar

    iText是著名的开放源码的站点sourceforge的一个项目,它是一个...如果PDF是标记的且包含一个结构树,就可以借助于iText将PDF文档转换成XML文档(这往往取决于PDF文档是如何创建的)。另外还可以从页面中提取纯文本。

    PdfTools:java中使用iText创建PDF格式文档的基本示例

    java中使用iText创建PDF格式文档的基本示例。 第一个 PDF 生成具有不同属性的基本 PDF,如标题、副标题、列表、表格和不同类型的字体。 PositionPDF 只是举例说明了文本对齐的处理,无论是右对齐、左对齐还是居中...

    使用iText生成PDF.doc

    此文档主要讲述了使用Java组件iText来生成PDF,操作PDF

    itextpdf 导出pdf 表格 自动分页中文 目录

    包含 itext-asian-5.2.0.jar itextpdf-5.5.5.jar

    iText PDF中文字体文件.rar

    Java使用iText PDF插件导出PDF文档时,需引入中文字体文件,并创建不同大小风格的中文字体

    itextpdf.jar

    创建XML文档,将HTML,Web表单,CSS或数据库中的文档转换为PDF,并使其符合全球标准。

    权威Itext生成pdf

    利用iText五步创建一个PDF文件:helloword。 第一步,创建一个 iTextSharp.text.Document对象的实例: Document document = new Document(); 第二步,为该Document创建一个Writer实例: PdfWriter.getInstance...

    itext7 根据pdf模板填充图像框

    因为项目需要用到pdf模板生成pdf,其中模板中有图片,找了好久没有资料,无奈之下翻看api和源码,给大家分享下

    itext5生成PDF(含水印文字及图片)

    itext5生成PDF(含水印文字及图片)的源代码,操作说明详细,代码完整可用。

    Java实现PDF读写(Itext)与解析XML读写(Dom4j)

    一、用JAVA完成了PDF读写(IText的应用) 加密PDF文件,引用到的JAR包是 bcprov-jdk15on-147 生成PDF文件,引用到的JAR包是itext5.5.1 项目文件为PDFText.java 主要实现功能: 1、创建一个PDF文件:HelloWorld.pdf,...

    iText2.1.7资料大全(制作PDF的java开源框)

    相关教程 iText 简介 iText创建文档简介 iText入门实例 IText使用PDF模板输出报表的实践 我和iText第一次亲密接触 相关JAR iText-2.1.7.jar(核心) iTextAsian.jar(中文支持) iText-rups-2.1.7.jar iText-rtf-...

    iTextpdf支持中文

    iTextpdf 通过本jar包,android 可以创建便捷PDF。 操作已经修改PDF模板显示内容等。 不用积分,大家免费下载。

    poi创建word、生成html、itext将html转换成pdf。pd4ml将jsp转成pdf

    1.用户导入word生成pdf -首先导入word的时候读取word里面的全部内容。调用(ReadAndWriteDoc)然后将内容 传送到createPdf里面生成pdf。导入的时候读取采用poi /生成的时候采用的是...4.将html转换成pdf(itext)

    使用poi+itext将excel转为pdf

    看到现在网上excel转pdf的代码很少,在csdn上找到一个还不能用,只能做简单的转换,只好自己写了一个,代码是一个maven工程,用eclipse创建,支持单元格合并等复杂的excel,同时能同步单元格样式到pdf中。...

    itext5pdf表格行变色实现过程源码+doc文档

    2.隔行换色的事件需要自己写一个java类,里面去定义背景颜色和长宽高,实质就是在pdf表格生成之后,去读取当页page内的所有行和列,并创建一个矩形,加入背景,覆盖到cell内,达到背景有颜色的效果。 隔行换色的...

Global site tag (gtag.js) - Google Analytics