itext poi 学习之旅 (1)创建pdf

从零开始学习itext 创建pdf

1.用到流进行创建的pdf

import java.io.File;
import java.io.FileOutputStream;
import com.itextpdf.text.*;
import com.itextpdf.text.pdf.PdfWriter;
public class PdfTest {
    public static void main(String[] args) throws Exception {
        /**
         * pdf 的准备工作定义了文档文件输出流等和文件.pdf
         */
        Document pdfDoc = new Document();
        // 将要生成的 pdf 文件的路径输出流
        FileOutputStream pdfFile = new FileOutputStream(
                new File("D:/firstpdf.pdf"));
        // pdf 文件中的一个文字段落
        Paragraph paragraph = new Paragraph(
                "My first PDF file with an image ...");
        Image image = Image
                .getInstance("C:/Users/Administrator/Desktop/itext创建PDF.jpg");

        // 用 Document 对象、File 对象获得 PdfWriter 输出流对象
        PdfWriter.getInstance(pdfDoc, pdfFile);
        pdfDoc.open(); // 打开 Document 文档

        // 添加一个文字段落、一张图片
        pdfDoc.add(paragraph);
        pdfDoc.add(image);
        pdfDoc.close();
    }
}

2.根据模板创建的pdf

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
public class TestPDF {
       public static void main(String[] args) {
           try {
                Document document = new Document();
                PdfWriter. getInstance(document, new FileOutputStream("F:\\test.pdf" ));
                document.open();
                document.add(new Paragraph( "pride in me!" ));
                document.close();
          } catch (FileNotFoundException e) {
                e.printStackTrace();
          } catch (DocumentException e) {
                e.printStackTrace();
          }
    }
}
时间: 2024-10-13 08:08:18

itext poi 学习之旅 (1)创建pdf的相关文章

itext A4纸张横向创建PDF

import java.awt.Color;import java.io.FileOutputStream;import java.io.IOException; import com.lowagie.text.Cell;import com.lowagie.text.Document;import com.lowagie.text.DocumentException;import com.lowagie.text.Element;import com.lowagie.text.Font;imp

SSIS 学习之旅 序章 和 简介

SSIS 学习之旅目录: 第一章: SSIS 学习之旅 第一个SSIS 示例(一) 第二章: SSIS 学习之旅 第一个SSIS 示例(二) 第三章: SSIS 学习之旅 数据同步 第四章: SSIS 学习之旅 FTP文件传输-FTP任务 第五章: SSIS 学习之旅 FTP文件传输-脚本任务 第六章: SSIS 学习之旅 FTP访问类 SSIS是Microsoft SQL Server Integration Services的简称,是生成高性能数据集成解决方案,是Microsoft BI 解

Android热修复学习之旅——HotFix完全解析

在上一篇博客Android热修复学习之旅开篇--热修复概述中,简单介绍了各个热修复框架的原理,本篇博客我将详细分析QQ空间热修复方案. Android dex分包原理介绍 QQ空间热修复方案基于Android dex分包基础之上,简单概述android dex分包的原理就是:就是把多个dex文件塞入到app的classloader之中,但是android dex拆包方案中的类是没有重复的,如果classes.dex和classes1.dex中有重复的类,当classes.dex和classes1

菜鸟的Android学习之旅(一)

最近在拜读郭霖老师的经典<第一行代码>,作为一名菜鸟级的新手来说这本书确实对新手很友好,讲的很详细.如果你也像我一样作为一只小菜鸟想学习Android,还不了解这本书的,还没有想好入手哪一本书作为自己新手启蒙书的同学,个人觉得你就不要徘徊了,加入购物车吧! 因为我才是刚开始学习不久,第二章才学习了很少一部分,所以我没办法说点有营养的东西,我就先记录一下我学习过程中经历的错误吧. 第二章开始,郭老师教我们如何手动创建活动.边看书边敲代码,但是你会发现当你完全按照书上所说敲完所有需要的代码之后代码

iOS学习之旅10 ATS(App Transport Security)对HTTPS协议要求引起的问题

问题描述 编写以下代码获取网络某个资源的MIMEType 1 -(void)getMIMEType 2 { 3 //路径 4 NSURL *url = [NSURL URLWithString:@"https://www.baidu.com/img/bd_logo1.png"]; 5 //请求对象 6 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 7 NSOperationQueue *

c++ hmtlcxx 学习之旅

最近刚网页抓取,抓取下来后需要解析,所以在网上找了一些资料,也问问我的师兄,最终结合网上的开源知识,完成了htmlcxx的使用. vs2013. 首先要去下载htmlcxx: https://github.com/dhoerl/htmlcxx 或者你也可以百度下去下载一个. 接下来,将文件文件解压,我用vs2013将htmlcxx.vcproj打开,点击生成. 生成好就可以,点击调试会有错误,我们也不需要调试. 创建一个win32控制台,直接点击完成. 接下来将debug下的htmlcxx.li

我的AngularJS 学习之旅

基础篇 1.Angular的 起源 2.比较Web 页面实现的几种方式 3.一些基本术语 4.Angular与其他框架的兼容性 5.总结 6.综合实例 很早之前就听朋友说起AngularJs,但由于各种原因,一直没去研究.最近正好有同事也对这个框架比较感兴趣,大家一起讨论,于是终于“名正言顺”地开始研究了. 本文的目的是记录一下自己这两周的学习点滴,算是学习笔记吧,如果对初学的朋友有一点帮助,那也算是一件好事.嘿嘿 1.Angular的 起源 关于Angular 的起源,可以追溯到2009 年的

Hasen的linux设备驱动开发学习之旅--异步I/O

/** * Author:hasen * 参考 :<linux设备驱动开发详解> * 简介:android小菜鸟的linux * 设备驱动开发学习之旅 * 主题:异步I/O * Date:2014-11-11 */ linux中最常用的输入/输出(I/O)模型是同步I/O.在这个模型中,请求发出后,应用就会阻塞,知道请求满足 为止.但是在某些情况下,I/O请求可能需要与其他的进程进行交叠.可移植操作系统接口(POSIX)异步I/O(AIO) 应用程序接口(API)就提供了这种功能. AIO基本

WCF学习之旅—实现支持REST客户端应用(二十四)

WCF学习之旅—实现REST服务(二十二) WCF学习之旅—实现支持REST服务端应用(二十三) 在上二篇文章中简单介绍了一下RestFul与WCF支持RestFul所提供的方法,及创建一个支持REST的WCF服务端程序,本文介绍如何调用上一篇文章介绍的RestFul服务端. 五.Windows客户端调用 为了强调REST的通用性,客户端不用WCF的形式调用服务,而是采用HttpWebResponse通过编程方式直接访问,消息格式我们选XML. 首先,我们使用C#来封装一个RestHelper类