1、测试例子:

需要导入的外部jar包:

相关API

http://www.coderanch.com/how-to/javadoc/itext-2.1.7/com/lowagie/text/package-summary.html

推荐博客相关参考资料:

http://www.cnblogs.com/linjiqin/p/3539283.html

 import java.awt.Color;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.net.URL; import javax.imageio.ImageIO; import sun.font.FontFamily; import com.lowagie.text.Cell;
import com.lowagie.text.Document;
import com.lowagie.text.Font;
import com.lowagie.text.FontFactory;
import com.lowagie.text.Image;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Row;
import com.lowagie.text.Table;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfWriter; /**
* 导出数据:
* 输出PDF格式文件:
* Created by Jason 2016-7-17 下午5:01:41
*/
public class PrinterTest { public static void main(String[] args) { /**
* 第一步:创建PDF文档对象
*/
Document doc=new Document();
try {
/**
* 第二步:流对象的准备
*/
FileOutputStream fos= new FileOutputStream("测试pdf格式文件.pdf");
PdfWriter writer=PdfWriter.getInstance(doc,fos); /**
* 第三步:打开文档
*/
doc.open();
/**
* 第四步:设置文档信息输出属性 :下面设置的是中文字体
*/
BaseFont bf=BaseFont.createFont( "STSong-Light", //被封装过的字体类型:字体
"UniGB-UCS2-H", //pdf编码格式和pdf数据显示方向:(xxx-H)水平、(xxx-V)垂直
BaseFont.NOT_EMBEDDED); //boolean值 意义不大 Font font=new Font(bf,,Font.BOLD,Color.green); /**
* 第五步:写入文档内容
*/ /*************************【插入Table表格】******************************************/ Table table=new Table(,);//3列10行 for (int i = ; i <=; i++) {
if(i==){//列标题
table.addCell(new Cell("Name"), ,);
table.addCell(new Cell("Sex"), ,);
table.addCell(new Cell("Hobby"),,);
}else {//行数据
for (int j = ; j <=; j++) {
table.addCell(new Cell("("+i+","+j+")"), i-, j-);
}
} } table.setBorder();
table.setBorderWidthBottom();table.setBorderWidthTop();
table.setBorderColor(Color.green);
table.setBorderColorBottom(Color.red);
table.setBorderColorTop(Color.red);
table.setAlignment();//表格:0:左,1:中,2:右
table.setBackgroundColor(Color.lightGray); doc.add(table); doc.add(new Paragraph("\n\n\n"));
/*************************【插入Image图片】******************************************/
Image png = Image.getInstance("aa.png");
png.setAbsolutePosition(, );//定位原点:屏幕左下角为圆心
doc.add(png); /*************************【插入文本信息】******************************************/
doc.add(new Paragraph("\n\n\n"));
//写入样式1
Paragraph p= new Paragraph("测试标题",font);
p.setAlignment();
doc.add(p); //写入样式2 :
font.setColor(Color.red);
doc.add( new Paragraph("我是小风,我爱彦! \n 信息:123:I am Jason,I love Angle Yan!\n信息:123:I am Jason,I love Angle Yan!",
font));;//字体颜色 //提示导出成功!
System.out.println("导出成功!");
/**
* 第六步:关闭文档
*/
doc.close();
} catch (FileNotFoundException e) {
System.err.println("没有找到文档对象!");
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
 

2、测试输出:

输出样式:

导出文本、表格、图像到PDF格式文件中(学习整理)的更多相关文章

  1. JSP页面导出PDF格式文件

    JSP页面导出PDF格式文件基本在前端页面可以全部完成 <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/ ...

  2. confluence导出PDF格式文件不显示中文解决

    由于confluence导出PDF格式文件需要应用字体文件,下载字体文件在confluence管理员界面安装即可. 我这里使用从simhei.ttf楷体,可以从windowns主机里下载(c:/win ...

  3. 【NLP】Tika 文本预处理:抽取各种格式文件内容

    Tika常见格式文件抽取内容并做预处理 作者 白宁超 2016年3月30日18:57:08 摘要:本文主要针对自然语言处理(NLP)过程中,重要基础部分抽取文本内容的预处理.首先我们要意识到预处理的重 ...

  4. winform利用itextsharp.dll实现图片文件转换PDF格式文件

    1.利用itextsharp.dll实现单个图片文件转换为PDF格式文件, 可以使用以下类: void ConvertJPG2PDF(string jpgfile, string pdf) { var ...

  5. [R] venn.diagram保存pdf格式文件?

    vennDiagram包中的主函数绘图时,好像不直接支持PDF格式文件: dat = list(a = group_out[[1]][,1],b = group_out[[2]][,1]) names ...

  6. 前端实现docx、pdf格式文件在线预览

    theme: vuepress highlight: atelier-heath-light 介绍 在业务中,如果遇到文档管理类的功能,会出现需要在线预览的业务需求,本文主要是通过第三方库来实现文档预 ...

  7. mysql导出指定字段或指定数据到文件中

    使用mysqldump把mysql数据库的数据导出到文件中还是挺方便的:比如说要导出baijunyao数据库: // mysqldump -u用户名 -p 数据库名 [表名]> 导出的文件名 m ...

  8. perl练习——FASTA格式文件中序列GC含量计算&perl数组排序如何获得下标或者键

    一.关于程序: FUN:计算FASTA文件中每条序列中G和C的含量百分比,输出最大值及其id INPUT:FASTA格式文件 >seq1 CGCCGAGCGCTTGACCTCCAGCAAGACG ...

  9. 页面打开pdf格式文件的方法

    <embed width=500 height=300 fullscreen=yes src="1.pdf" />

随机推荐

  1. Object-c 基础总结

    1,nil,NULL,NSNull:nil用来给对象附值,object—c里允许对象为空,空对象也可以接受消息.但是不允许指针为空,NULL是给任何指针附值的.所以NULL只在C或C++里才用.NSN ...

  2. Python中的引用的使用注意

    关于Python中的引用的一些使用注意 在python中,在创建一个对象并给它赋予一个变量时,这个赋予的变量仅仅是一个引用它所代表的对象.也就是说新创建的对象只是指向计算机中储存那个对象的内存. 比如 ...

  3. 一步一步制作yaffs/yaffs2根文件系统(七)---真挚地道歉以及纠正前边出现的错误!

    接上一节http://blog.csdn.net/mybelief321/article/details/10040939 说实话,我当时写这个系列的博文的时候,感觉对BusyBox算是有点了解,直到 ...

  4. Sublime Text 3 格式代码插件 codeFormatter

    一款可以对html.JS.CSS.PHP.python代码格式化的sublime插件 默认快捷键ctrl+alt+F,默认可以对html.js.css格式代码, 如果想对PHP格式化,需要PHP5.6 ...

  5. HighCharts基本使用实例(入门)

    HighCharts 摘要 HighCharts是眼下最为流行的图表插件,应用范围广泛,眼下支持曲线图.区域图.3D图.柱状图.饼图.散列图.混合图等,而且还支持一些拓展的特殊图表,如:仪表图.极地图 ...

  6. Android API 文档 离线秒开方法

    http://blog.csdn.net/haifengzhilian/article/details/39898627 也是最近才看Android开发,但是,它的API文档无论是在线还是离线的,实在 ...

  7. ZooKeeper监控

    http://jm-blog.aliapp.com/?p=1450 在公司内部,有不少应用已经强依赖zookeeper,zookeeper的工作状态直接影响它们的正常工作.目前开源世界中暂没有一个比较 ...

  8. 第一个Xcode项目 - 代码修改布局约束

    第一行的选中效果已经有了,那第二行的选中效果怎么做呢?我这里选择改变布局约束来实现选中效果 [我有个用object-c做APP的同事他说,我觉得这个应该去获取色块的位置,然后赋给选中用的View,然后 ...

  9. onInterceptTouchEvent和onTouchEvent调用时序

    onInterceptTouchEvent()是ViewGroup的一个方法,目的是在系统向该ViewGroup及其各个childView触发onTouchEvent()之前对相关事件进行一次拦截,A ...

  10. MYSQL 源代码 学习

    http://blog.sina.com.cn/s/articlelist_1182000643_1_1.html http://blog.csdn.net/gao1738/article/detai ...