iText生成PDF入门实例

2019-03-28 15:27|来源: 领悟书生

最近想把网站的文章导出为PDF文件,所以又得学学怎样导出PDF。iText是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF文档,而且可以将HTML网页转化为PDF文件,同时它可以很方便的和web或者其他应用整合使用。


iText的官网:http://www.itextpdf.com  

现在最新版是itext-5.3.5.zip

使用就很简单的了,只要把itextpdf-5.3.5.jar添加到classpath即可


iText生成PDF入门实例

环境准备好了,现在开始一个最简单的helloworld,直接看源码

package com.naxsu.utils;
 
import java.io.FileOutputStream;
import java.io.IOException;
 
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfWriter;
 
/**
 * java导出PDF
 * 
 * @author huangyineng http://www.656463.com
 * @date 2013-1-30 下午1:09:53
 * @description
 */
public class ItextUtil {
    public static void main(String[] args) throws Exception {
    String pdfPath = "F://iText-hello.pdf";
    createPdf(pdfPath);
    }
 
    public static void createPdf(String filename) 
        throws DocumentException,IOException {
    // step 1:创建Document对象
    Document document = new Document();
    // step 2:获取PdfWriter实例
    PdfWriter.getInstance(document, 
                    new FileOutputStream(filename));
    // step 3:打开Document
    document.open();
         
    // step 4:添加内容
    document.add(new Paragraph("Hello World!"));
         
    // step 5:关闭打开的Document
    document.close();
    }
}

本节先到些结束,下节说一个很经典的话题,那就是解决中文乱码


本文链接:iText生成PDF入门实例,由领悟书生原创

转载请注明出处【http://www.656463.com/article/349】

相关问答

更多
  • 楼主可以用FineReport报表软件,它是用纯java编写的,可以嵌入进java中,可以随意编辑报表,然后生成pdf格式,就可以做到修改报表内容了。
  • 首先从iText的官网下载这个开源的小组件。   iText官方网站   Java版iText组件   Java版工具包   C#版iText组件   C#版工具包   这里笔者使用的是Java版itext-5.2.1。   将itext-5.2.1.zip压缩包解压缩后得到7个文件:itextpdf-5.2.1.jar(核心组件)、itextpdf-5.2.1-javadoc.jar(API文档)、itextpdf-5.2.1-sources.jar(源代码)、itext-xtra-5.2.1.jar、i ...
  • 首先你要实例化一个带有所需细节的字体对象。 这里您将指定它是否为粗体。 Font boldFont = new Font(Font.FontFamily.TIMES_ROMAN, 18, Font.BOLD); Font normalFont = new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.ITALIC); 然后使用任何你想使用它的字体。 为了添加一个带有粗体字体的表格单元格。 PdfPTable table=new PdfPTable(1); PdfP ...
  • 只有一些iText元素支持RTL,例如PdfPCell,PdfPTable,ColumnText。 只有这些元素具有可以设置为PdfWriter.RUN_DIRECTION_RTL值的RunDirection属性。 ( 更多信息在波斯 ) Only some of the iText elements support RTL, shuch as PdfPCell, PdfPTable, ColumnText. Only these elements have RunDirection property wh ...
  • 我假设这是一个带有空参数列表的静态方法。 如果是这种情况,请更正您的代码。 你认为有一个空的挡块是明智的吗? 您的代码将吞下任何抛出的异常,您将不会更聪明。 打印堆栈跟踪。 I'll assume that this is a static method with an empty paramter list. If that's the case, please correct your code. Do you think it's wise to have an empty catch block? ...
  • 我从维基百科拍摄了CMYK JPEG图像,文件大小为714 KByte。 我创建了一个PDF文件,只有这个图像。 这导致文件大小为1.06 MB,其中714 KB由原始图像组成,373 KB用于引入CMYK图像时所需的颜色空间信息。 这大约是1.06 MB,这意味着PDF对象的开销非常小。 我想你忽略了这样一个事实,即PDF需要基于ICC的色彩空间信息以及CMYK JPEG图像。 使用我在维基百科上找到的图像进行测试时,我没有看到任何其他异常结果。 I've taken a CMYK JPEG image ...
  • 嘿伙计们终于找到了解决方案: mainTable.addCell(PDFUtil.getBlankLine(20f)); float[] colsWidth = {0.5f,3.8f,0.9f,0.9f,1.3f,0.9f,1.3f,1.4f}; PdfPTable itemListTab = new PdfPTable(colsWidth); PdfPCell slNo = PDFUtil.getTableHeaderCell(PDFUtil.S_NO, PDFUtil ...
  • 正如你所说,你不需要花哨的表,你需要更快更容易实现库,我更喜欢iText因为它比Apache FOP简单得多。 使用iText可以非常轻松地将列表和表格添加到PDF文档中。 Apache FOP非常关注生成PDF文档,其中要写入的数据以XML格式存储。 基本上Apache FOP的主要目标是将XML文件转换为PDF文件。 您可以访问此处了解更多详情: - http://blog.xebia.com/comparing-apache-fop-with-itext/ As you said , you don' ...