导出文本、表格、图像到PDF格式文件中(学习整理)
2016-07-17 20:01
531 查看
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
2、测试输出:
输出样式:
需要导入的外部jar包:
相关API
推荐博客相关参考资料:
importjava.awt.Color; importjava.io.FileNotFoundException; importjava.io.FileOutputStream; importjava.net.URL; importjavax.imageio.ImageIO; importsun.font.FontFamily; importcom.lowagie.text.Cell; importcom.lowagie.text.Document; importcom.lowagie.text.Font; importcom.lowagie.text.FontFactory; importcom.lowagie.text.Image; importcom.lowagie.text.Paragraph; importcom.lowagie.text.Row; importcom.lowagie.text.Table; importcom.lowagie.text.pdf.BaseFont; importcom.lowagie.text.pdf.PdfWriter; /** *导出数据: *输出PDF格式文件: *CreatedbyJason2016-7-17下午5:01:41 */ publicclassPrinterTest{ publicstaticvoidmain(String[]args){ /** *第一步:创建PDF文档对象 */ Documentdoc=newDocument(); try{ /** *第二步:流对象的准备 */ FileOutputStreamfos=newFileOutputStream("测试pdf格式文件.pdf"); PdfWriterwriter=PdfWriter.getInstance(doc,fos); /** *第三步:打开文档 */ doc.open(); /** *第四步:设置文档信息输出属性:下面设置的是中文字体 */ BaseFontbf=BaseFont.createFont("STSong-Light",//被封装过的字体类型:字体 "UniGB-UCS2-H",//pdf编码格式和pdf数据显示方向:(xxx-H)水平、(xxx-V)垂直 BaseFont.NOT_EMBEDDED);//boolean值意义不大 Fontfont=newFont(bf,18,Font.BOLD,Color.green); /** *第五步:写入文档内容 */ /*************************【插入Table表格】******************************************/ Tabletable=newTable(3,10);//3列10行 for(inti=1;i<=10;i++){ if(i==1){//列标题 table.addCell(newCell("Name"),0,0); table.addCell(newCell("Sex"),0,1); table.addCell(newCell("Hobby"),0,2); }else{//行数据 for(intj=1;j<=3;j++){ table.addCell(newCell("("+i+","+j+")"),i-1,j-1); } } } table.setBorder(6); table.setBorderWidthBottom(2);table.setBorderWidthTop(2); table.setBorderColor(Color.green); table.setBorderColorBottom(Color.red); table.setBorderColorTop(Color.red); table.setAlignment(1);//表格:0:左,1:中,2:右 table.setBackgroundColor(Color.lightGray); doc.add(table); doc.add(newParagraph("\n\n\n")); /*************************【插入Image图片】******************************************/ Imagepng=Image.getInstance("aa.png"); png.setAbsolutePosition(140,140);//定位原点:屏幕左下角为圆心 doc.add(png); /*************************【插入文本信息】******************************************/ doc.add(newParagraph("\n\n\n")); //写入样式1 Paragraphp=newParagraph("测试标题",font); p.setAlignment(1); doc.add(p); //写入样式2: font.setColor(Color.red); doc.add(newParagraph("我是小风,我爱彦!\n信息:123:IamJason,IloveAngleYan!\n信息:123:IamJason,IloveAngleYan!", font));;//字体颜色 //提示导出成功! System.out.println("导出成功!"); /** *第六步:关闭文档 */ doc.close(); }catch(FileNotFoundExceptione){ System.err.println("没有找到文档对象!"); e.printStackTrace(); }catch(Exceptione){ e.printStackTrace(); } } }
2、测试输出:
输出样式:
相关文章推荐
- selenium测试(Java)--学习总结
- Ubuntu下mongodb开机自启动
- CSS浮动(float,clear)通俗讲解
- getpwnam
- JavaScript设计模式----装饰者模式
- C语言getpwuid()函数:从密码文件中取得指定uid的数据
- C++基础:四大基本函数,构造,析构,拷贝构造,赋值函数
- new和alloc
- getpwuid()
- 机器学习入门介绍
- 解决java.lang.NoSuchFieldError异常
- 浅析代码风格
- bzoj 1324(最小割模型)
- pkg-config的安装配置及其作用
- Android极光、小米、百度、jpush等一些推送简介
- ZUFEOJ 2395 天棋哥哥大战AlphGo
- C++1(Effective C++)
- 详细介绍Linux finger命令的使用
- 求最大子矩阵的大小 (maximal-rectangle)
- JVM调优