`

java 生成pdf

    博客分类:
  • java
阅读更多
import java.awt.Color;
import java.io.FileOutputStream;

import com.lowagie.text.Anchor;
import com.lowagie.text.Chapter;
import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.Font;
import com.lowagie.text.FontFactory;
import com.lowagie.text.PageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Section;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfWriter;


public class PdfTwo {
    private static Font headfont ;// 设置字体大小
    private static Font keyfont;// 设置字体大小
    private static Font textfont;// 设置字体大小


    static{
        BaseFont bfChinese;
        try {
            //bfChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
            bfChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
            headfont = new Font(bfChinese, 10, Font.BOLD);// 设置字体大小
            keyfont = new Font(bfChinese, 8, Font.BOLD);// 设置字体大小
            textfont = new Font(bfChinese, 8, Font.NORMAL);// 设置字体大小
        } catch (Exception e) {         
            e.printStackTrace();
        } 
    }
    public  void writeSimplePdf() throws Exception{
    //1.新建document对象
    //第一个参数是页面大小。接下来的参数分别是左、右、上和下页边距。
    Document document = new Document(PageSize.A4, 50, 50, 50, 50);
    //2.建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中。
    //创建 PdfWriter 对象第一个参数是对文档对象的引用,第二个参数是文件的实际名称,在该名称中还会给出其输出路径。
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("C:\\ITextTest.pdf"));
    //3.打开文档
    document.open();
    //4.向文档中添加内容
    //通过 com.lowagie.text.Paragraph 来添加文本。可以用文本及其默认的字体、颜色、大小等等设置来创建一个默认段落
    document.add(new Paragraph("First page of the document."));
    document.add(new Paragraph("Some more text on the first page with different color and font type.",
    FontFactory.getFont(FontFactory.COURIER, 14, Font.BOLD, new Color(255, 150, 200))));
    //5.关闭文档
    document.close();
    }
public void writeCharpter() throws Exception{
//新建document对象  第一个参数是页面大小。接下来的参数分别是左、右、上和下页边距。
Document document = new Document(PageSize.A4, 20, 20, 20, 20);
//建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中。
PdfWriter writer = PdfWriter.getInstance(document,new FileOutputStream("c:\\ITextTest.pdf"));
//打开文件
document.open();
//标题
document.add(new Paragraph("\n11111111111111111111111111111111111111"));


document.addTitle("Hello mingri example");
//作者
document.addAuthor("wolf");
//主题
document.addSubject("This example explains how to add metadata.");
document.addKeywords("iText, Hello mingri");
document.addCreator("My program using iText");
// document.newPage();
//向文档中添加内容
document.add(new Paragraph("\n22222222222222222222222222222222222222222222222222222222222222222"));
document.add(new Paragraph("\n"));
document.add(new Paragraph("\n"));
document.add(new Paragraph("\n"));
document.add(new Paragraph("\n"));
document.add(new Paragraph("\n"));
document.add(new Paragraph("First page of the document.",keyfont));
document.add(new Paragraph("First page of the document."));
document.add(new Paragraph("First page of the document."));
document.add(new Paragraph("First page of the document."));
document.add(new Paragraph("Some more text on the first page with different color and font type.",
FontFactory.getFont(FontFactory.defaultEncoding, 10,Font.BOLD, new Color(0, 0, 0))));
Paragraph title1 = new Paragraph("Chapter 1",
FontFactory.getFont(FontFactory.HELVETICA, 18, Font.BOLDITALIC, new Color(0, 0,255)));
//新建章节
Chapter chapter1 = new Chapter(title1, 1);
chapter1.setNumberDepth(0);
Paragraph title11 = new Paragraph("This is Section 1 in Chapter 1",
FontFactory.getFont(FontFactory.HELVETICA, 16, Font.BOLD,new Color(255, 0, 0)));
Section section1 = chapter1.addSection(title11);
Paragraph someSectionText = new Paragraph("This text comes as part of section 1 of chapter 1.");
section1.add(someSectionText);
someSectionText = new Paragraph("Following is a 3 X 2 table.");
section1.add(someSectionText);
document.add(chapter1);
//关闭文档
document.close();
}
public  void writePdf(String title,String cont,String createTime,String authorName, Font link) throws Exception{
    //1.新建document对象
    //第一个参数是页面大小。接下来的参数分别是左、右、上和下页边距。
    Document document = new Document(PageSize.A4, 50, 50, 50, 50);
    //2.建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中。
    //创建 PdfWriter 对象第一个参数是对文档对象的引用,第二个参数是文件的实际名称,在该名称中还会给出其输出路径。
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("C:\\ITextTest.pdf"));
    //3.打开文档
    document.open();
    //4.向文档中添加内容
    //通过 com.lowagie.text.Paragraph 来添加文本。可以用文本及其默认的字体、颜色、大小等等设置来创建一个默认段落
    Paragraph pt=new Paragraph("zhong:-"+title,keyfont);//设置字体样式
    pt.setAlignment(1);//设置文字居中 0靠左   1,居中     2,靠右
    document.add(pt);
    document.add(new Paragraph("\n"));
    pt=new Paragraph(createTime+"\t\t\t\t\t\t"+authorName,keyfont);
    pt.setAlignment(2);
    document.add(pt);
    document.add(new Paragraph("HelloWorld"));

    document.add(new Paragraph("\n"));
    document.add(new Paragraph(createTime+"\t\t\t\t\t\t"+authorName,keyfont));
    document.add(new Paragraph("\n"));
    document.add(new Paragraph("121121132132231肖",keyfont));
    document.add(new Paragraph("Some more text on the 胜多负少的身份的分公司的风格发的电饭锅的分公司的分公司的的分公司电饭锅是的分公司的风格的分公司的分公司的复合弓好几顿饭发的寡鹄单凫过好地方风格和的发干活的风格和发干活的风格和地方过电饭锅好地方干活的风格和电饭锅好地方干活负少的身份的分公司的风格发的电饭锅的分公司的分公司的的分公司电饭锅是的分公司的风格的分公司的分公司的复合弓好几顿饭发的寡鹄单凫过好地方风格和的发干活的风格和发干活的风格和地方过电饭锅好地方干活的风格和电饭锅好地方干活负少的身份的分公司的风格发的电饭锅的分公司的分公司的的分公司电饭锅是的分公司的风格的分公司的分公司的复合弓好几顿饭发的寡鹄单凫过好地方风格和的发干活的风格和发干活的风格和地方过电饭锅好地方干活的风格和电饭锅好地方干活的风格和符合斯蒂夫 first page with different color andsdfsadfffffffffffffffffffffffffff font type.",
    keyfont));
    Paragraph p4 = new Paragraph();
   
    p4.add(new Chunk("Click "));
   
    p4.add(new Chunk("here", link).setLocalGoto("GOTO"));
   
    p4.add(new Chunk(" to find local goto"));
   
    p4.add(new Chunk("\n\n\n\n\n\n\n\n\n"));
   
    Paragraph p5 = new Paragraph();
   
    p5.add(new Chunk("Local Goto Destination").setLocalDestination("GOTO"));
   
   
   
    document.add(p4);
   
    document.add(p5);
   
     
   
//        Anchor anchor = new Anchor("www.mikesdotnetting.com", link);
//   
//        anchor.reference("http://www.mikesdotnetting.com");
//   
//        document.add(anchor);
   

    //5.关闭文档
    document.close();
    }

public static void main(String[] args) throws Exception {
  System.out.println("begin");
  PdfTwo ppt=new PdfTwo();
  ppt.writePdf("fgh----文档标题","sdfsdfasdfasdfsdfasdf","时间","作者", headfont);
//   ppt.writeCharpter();
//   ppt.writeSimplePdf();
  System.out.println("end");
}



}
ant-1.7.1.jar
iText-2.0.8.jar
itext-rtf-2.1.7.jar
iTextAsian.jar
分享到:
评论

相关推荐

    Java生成pdf文件,解决中文乱码问题.pdf

    Java 生成 PDF 文件,解决中文乱码问题 Java 生成 PDF 文件,解决中文乱码问题是 Java 编程中常见的问题。解决这个问题的关键是正确地设置中文字体,以避免乱码问题。本文将通过一个完整的示例代码,详细讲解如何...

    java生成pdf

    在给定的“java生成pdf”的示例中,我们可以看到使用了iText库来实现这一功能。iText是一个流行的Java库,用于创建和编辑PDF文档,特别适合动态生成文档。在这个小例子中,我们可能看到了如何设置文本、字体、页面...

    java生成PDF字体库包+PDF包亲测成功

    Java生成PDF字体库包与PDF相关的技术涉及到Java编程语言、PDF文档处理以及特定的库,如iText。本文将深入探讨这些关键知识点,以便你更好地理解如何在Java环境中创建和处理PDF文档。 首先,让我们从Java开始。Java...

    java生成pdf工具类

    例如,一个简单的Java生成PDF工具类可能包含以下方法: ```java public class PdfGenerator { public void generatePdf(String dest, List<String> contentList) { // 初始化PDF文档和页面 PdfDocument pdfDoc =...

    JAVA生成PDF文件(Demo+jar),可加密及设置安全性

    首先,我们关注的是"JAVA生成PDF文件"。Java中常用的PDF库有iText、Apache PDFBox、 Flying Saucer等。这里提到了iText,它是一个强大的开源库,可以方便地创建、修改和操作PDF文档。使用iText,你可以添加文本、...

    Java 生成PDF工具类 免费版

    Java 生成PDF是一个常见的需求,特别是在企业级应用中,用于生成报告、合同或者任何需要以电子文档形式存储或传输的数据。在这个场景下,`iText`是一个非常流行且功能强大的库,尤其对于Java开发者来说。`iText ...

    aspose-17.8 Java 生成 pdf 工具类

    在IT行业中,生成PDF文档是常见的需求之一,特别是在Java开发中。Aspose是一家知名的软件公司,提供了一系列API来处理各种格式的文件,包括PDF。在本篇内容中,我们将聚焦于"Aspose-17.8 Java 生成PDF工具类",了解...

    java生成PDF 然后加密压缩文件

    前段时间由于项目需要,使用java生成PDF文件,然后将文件压缩成ZIP格式,同时对压缩文件进行加密,先将代码及jar包上传供大家参考,并希望大家共同完善和学习。 java生成PDF,java加密压缩文件并,java生成PDF后压缩...

    java生成pdf字体和模板

    在Java开发中,生成PDF...总的来说,Java生成PDF字体和模板涉及了从创建文档、设置字体、设计布局到添加内容和导出文件等一系列步骤。理解并熟练运用这些工具和概念,可以帮助你高效地创建专业且富有个性化的PDF文档。

    Java 生成pdf文件加盖公章图片,上传阿里云

    以上就是使用Java生成PDF文件并加盖公章图片,以及上传阿里云的基本步骤和涉及的关键技术点。实际开发中可能还需要根据具体需求进行调整,例如,公章的透明度、旋转角度等,都需要通过代码进行精确控制。

    java生成PDF417条码

    Java作为一种广泛使用的编程语言,拥有丰富的库和框架来生成PDF417条码。在给定的博文链接中,虽然没有提供具体的内容,但我们可以推测作者可能分享了如何在Java环境中创建和使用PDF417条码的方法。通常,这会涉及到...

    使用java生成pdf文件

    Java 生成 PDF 文件是开发过程中常见的一种需求,用于将数据以规范化的格式导出或打印。在本例中,我们看到使用的是 `iText` 库,这是一个强大的 Java 库,专门用于创建和修改 PDF 文档。以下是 `iText` 的核心概念...

    java生成pdf文件包含表格

    在Java编程中,生成PDF文件是一项常见的任务,特别是在需要创建报告、发票或任何其他类型的数据文档时。PDF(Portable Document Format)是一种通用的文件格式,能够保持文档的原始布局和样式,便于分享和打印。本篇...

    java生成PDF工具代码

    这个“java生成PDF工具代码”显然利用了`iText`库来解决一个特定的问题:在PDF中正确处理中文文本的换行。 在默认情况下,`iText`可能无法完美地处理中文字符的换行,因为中文字符间的分词和换行规则与英文有很大...

    java生成pdf文件

    Java生成PDF文件是一种常见的需求,特别是在企业级应用中,用于生成报告、发票、合同等文档。iText是一个广泛使用的开源库,专为Java和.NET设计,用于创建和修改PDF文档。在Java中生成PDF文件,iText库是首选工具之...

    Java生成PDF完整示例,解决中文乱码

    在Java编程环境中,生成PDF文档是一项...总的来说,Java生成PDF并解决中文乱码问题涉及到对iText库的深入理解和使用,以及对PDF文档格式的理解。通过合理利用这些库和工具,我们可以高效地生成符合业务需求的PDF文档。

    java生成pdf文件分页输出并添加水印

    在Java开发中,生成PDF文件是一项常见的需求,特别是在报表、文档和证书的生成场景中。Itext库是一个广泛使用的开源库,它允许开发者通过简单的API来创建和编辑PDF文档。本篇文章将深入探讨如何利用Itext库在Java中...

Global site tag (gtag.js) - Google Analytics