java中怎么利用poi和itext生成pdf文档

 我来答
杜爷1号
推荐于2016-08-31 · 知道合伙人软件行家
杜爷1号
知道合伙人软件行家
采纳数:4973 获赞数:9186
毕业于福建农林大学,本科学士学位。从事IT行业3年,曾参与过多个大型项目的需求调研、软件研发。

向TA提问 私信TA
展开全部

生成PDF文档代码如下:

package poi.itext;
import java.io.FileOutputStream;
import java.io.IOException;
import java.awt.Color;
import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
import com.lowagie.text.pdf.BaseFont;
/**
 * 创建Pdf文档
 * @author Administrator
 *
 */
public class HelloPdf
{
    public static void main(String[] args)throws Exception
    {
        BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
        Font FontChinese = new Font(bfChinese, 12, Font.NORMAL);
        // 第一步,创建document对象
        Rectangle rectPageSize = new Rectangle(PageSize.A4);
        
        //下面代码设置页面横置
        //rectPageSize = rectPageSize.rotate();
        
        //创建document对象并指定边距
        Document doc = new Document(rectPageSize,50,50,50,50);
        Document document = new Document();
        try
        {
            // 第二步,将Document实例和文件输出流用PdfWriter类绑定在一起
            //从而完成向Document写,即写入PDF文档
            PdfWriter.getInstance(document,new FileOutputStream("src/poi/itext/HelloWorld.pdf"));
            //第3步,打开文档
            document.open();
            //第3步,向文档添加文字. 文档由段组成
            document.add(new Paragraph("Hello World"));
            Paragraph par = new Paragraph("世界你好",FontChinese);
            document.add(par);
            PdfPTable table = new PdfPTable(3);
            for(int i=0;i<12;i++)
            {
                if (i == 0)
                {
                    PdfPCell cell = new PdfPCell();
                    cell.setColspan(3);
                    cell.setBackgroundColor(new Color(180,180,180));
                    cell.addElement(new Paragraph("表格头" , FontChinese));
                    table.addCell(cell);
                }
                else
                {
                    PdfPCell cell = new PdfPCell();
                    cell.addElement(new Paragraph("表格内容" , FontChinese));
                    table.addCell(cell);
                }
            }
            document.add(table);
        }
        catch (DocumentException de)
        {
            System.err.println(de.getMessage());
        }
        catch (IOException ioe)
        {
            System.err.println(ioe.getMessage());
        }
        //关闭document
        document.close();
        
        System.out.println("生成HelloPdf成功!");
     }
    
    
}

希望对你有帮助。

帐号已注销
2015-07-20 · TA获得超过1705个赞
知道大有可为答主
回答量:1636
采纳率:55%
帮助的人:921万
展开全部
一、iText介绍 iText是着名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。 iText的安装非常方便,在http://www.lowagie.com/iText/down...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式