`
zhouxianglh
  • 浏览: 267407 次
  • 性别: 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是一款广泛使用的Java库,专门...通过阅读“iText创建pdf中文文档.doc”提供的详细资源,你可以深入了解如何利用iText的特性和方法来创建自定义的PDF文档。学习和掌握iText,将使你在处理PDF文档时更加得心应手。

    iText_pdf.rar_iText pdf_itext PDF类

    在实际开发中,使用iText创建PDF时,首先需要导入iText库,然后创建`Document`对象来表示PDF文档,接着使用`PdfWriter`将`Document`对象与输出流关联。通过`Paragraph`、`Font`、`Chunk`等类添加内容,可以控制文本...

    itext 生成pdf 目录

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

    Android使用iText生成pdf并读取pdf内容

    iText是一个强大的开源库,它允许开发者在Java和.NET环境中创建、编辑和处理PDF文档。在这个场景中,我们将探讨如何利用iText在Android应用中生成PDF以及读取PDF的内容。 首先,我们需要在Android项目中引入iText库...

    itext导出pdf不显示中文 ITextRenderer不显示中文

    iText创建PDF时,需要依赖字体来正确地呈现文本。默认情况下,iText只包含有限的几种基本字体,这些字体可能不包含中文字符集。因此,当尝试输出中文时,如果没有正确的字体资源,就会出现乱码或不显示的情况。 ...

    itext7 pdf转图片

    在IT行业中,iText是一个广泛使用的Java和.NET库,用于创建、编辑和处理PDF文档。在最新的版本iText 7中,它提供了丰富的功能,包括将PDF文档转换为图像。这个话题涉及到PDF处理和图像转换两个核心领域。下面将详细...

    使用IText生成PDF和WORD文档

    以下是一个简单的示例,演示如何使用IText创建一个包含文本的PDF文档: ```java import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Paragraph; import ...

    Itext删除PDF的图层

    Itext是一个开源Java库,专为处理PDF文档设计,提供了一系列API用于创建、编辑和阅读PDF文件。 **Itext库介绍** Itext是PDF处理的强力工具,它允许开发者进行各种操作,包括添加文本、图像、表格,以及处理PDF的...

    iText操作Pdf简单整理

    1. **创建PDF文档**:使用`Document`类作为PDF文档的容器,通过`Document.open()`方法开启文档,然后使用`Paragraph`、`Chunk`等对象添加文本内容,最后调用`Document.close()`关闭文档。 2. **字体管理**:iText...

    JAVA基于ITEXT实现的PDF报表系统

    要使用ITEXT创建PDF报表,首先需要引入相应的依赖。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>com.itextpdf</groupId> <artifactId>itextpdf <version>5.x.x ``` 这里的...

    itext生成PDF开发文档

    在 Java 开发中,iText 提供了丰富的 API,使得开发者可以方便地在代码中创建 PDF 文件、添加文本、图像、表格、链接等元素,甚至进行数字签名和表单处理。在本项目中,我们看到使用了 iText 7.0.2 版本,这是 iText...

    itext对pdf进行编辑

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

    itextpdf-5.5.13

    《iTextPDF 5.5.13:创建PDF文件的高效工具》 iTextPDF是一款功能强大的Java库,主要用于创建、编辑以及处理PDF文档。版本5.5.13是其历史版本之一,提供了丰富的API和功能,使得开发者能够方便地在Android平台上...

    使用iText生成PDF.doc

    `Table`类用于创建PDF中的表格。示例中创建了一个2行4列的表格,并添加了单元格。`addCell()`方法用于添加单元格,可以通过参数调整单元格的样式和位置。 6. **插入图像**: 示例中使用`Jpeg`类添加了一张图片。...

    使用ITEXT导出PDF、WORD,APACHE POI导出EXCEL报表文件

    以下是一个简单的示例,展示如何使用ITEXT创建PDF文件: ```java import com.itextpdf.text.Document; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfWriter; import java.io....

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

    - 创建PDF文档:使用`Document`类初始化一个新的PDF文档对象,并设定页面大小、边距等属性。 - 添加表格:使用`PdfPTable`类创建表格,指定列数和宽度,然后添加单元格数据,可以使用` PdfPCell`类表示每个单元格...

    使用POI和IText将Excel转换成PDF

    有了这些数据,我们可以使用iText创建PDF文档并写入内容: ```java import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Paragraph; import ...

    Itext生成PDF所需要的最全Jar包

    在实际使用中,你需要将这些Jar包添加到你的项目类路径中,然后就可以通过Itext提供的丰富API来创建PDF了。例如,你可以创建一个新的PDF文档,添加标题、段落,插入图片,设置字体和颜色,甚至添加交互式表单。Itext...

    itext实现pdf打印之二

    1. **初始化PDFDocument对象**:这是创建PDF文档的第一步,我们需要实例化一个PDFDocument对象,并指定文件名或输出流。 ```java PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(...

Global site tag (gtag.js) - Google Analytics