导出文本、表格、图像到PDF格式文件中(学习整理)
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格式文件中(学习整理)的更多相关文章
- JSP页面导出PDF格式文件
JSP页面导出PDF格式文件基本在前端页面可以全部完成 <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/ ...
- confluence导出PDF格式文件不显示中文解决
由于confluence导出PDF格式文件需要应用字体文件,下载字体文件在confluence管理员界面安装即可. 我这里使用从simhei.ttf楷体,可以从windowns主机里下载(c:/win ...
- 【NLP】Tika 文本预处理:抽取各种格式文件内容
Tika常见格式文件抽取内容并做预处理 作者 白宁超 2016年3月30日18:57:08 摘要:本文主要针对自然语言处理(NLP)过程中,重要基础部分抽取文本内容的预处理.首先我们要意识到预处理的重 ...
- winform利用itextsharp.dll实现图片文件转换PDF格式文件
1.利用itextsharp.dll实现单个图片文件转换为PDF格式文件, 可以使用以下类: void ConvertJPG2PDF(string jpgfile, string pdf) { var ...
- [R] venn.diagram保存pdf格式文件?
vennDiagram包中的主函数绘图时,好像不直接支持PDF格式文件: dat = list(a = group_out[[1]][,1],b = group_out[[2]][,1]) names ...
- 前端实现docx、pdf格式文件在线预览
theme: vuepress highlight: atelier-heath-light 介绍 在业务中,如果遇到文档管理类的功能,会出现需要在线预览的业务需求,本文主要是通过第三方库来实现文档预 ...
- mysql导出指定字段或指定数据到文件中
使用mysqldump把mysql数据库的数据导出到文件中还是挺方便的:比如说要导出baijunyao数据库: // mysqldump -u用户名 -p 数据库名 [表名]> 导出的文件名 m ...
- perl练习——FASTA格式文件中序列GC含量计算&perl数组排序如何获得下标或者键
一.关于程序: FUN:计算FASTA文件中每条序列中G和C的含量百分比,输出最大值及其id INPUT:FASTA格式文件 >seq1 CGCCGAGCGCTTGACCTCCAGCAAGACG ...
- 页面打开pdf格式文件的方法
<embed width=500 height=300 fullscreen=yes src="1.pdf" />
随机推荐
- 排序算法_MergeSort
算法思想: 分治自顶而下实现归并排序: 分治法的三个步骤 设归并排序的当前区间是R[low..high],分治法的三个步骤是:①分解:将当前区间一分为二,即求分裂点 ...
- windwos server 2008下iis7各种操作
1.发布一个asp程序带access数据库的 默认server 08是安装了iis7的,但是它默认没支持asp这项,这时你可以直接去控制面板--程序和功能--打开或关闭windows功能(双击打开)- ...
- Linux系统IP地址
1.IP地址概述 2.配置IP地址 查看IP地址 在网卡上绑定一个IP地址 同一张网卡上绑定多个IP 绑定一块网卡设备 修改或删除IP地址 IP地址概述 这里不多赘述,参考<计算机网络>课 ...
- Android基于XMPP Smack Openfire下学习开发IM(六)总结
不管学习什么都应该总结 这里我把关于Xmpp的一些方法整理到一个工具类中了 我就分享给大家 XmppConnection.java package com.techrare.utils; import ...
- JDk 内部分工具 简述
jar — 一个创建和管理 jar 文件的工具. java — Java 应用启动器.在这篇文章里,开发和部署都是用的这个启动器. javac — Java 编译器. javadoc — API 文档 ...
- shell查找文件并删除
-mtime 0 表示文件改动时间距离当前为0天的文件.即距离当前时间不到1天(24小时)以内的文件. -mtime 1 表示文件改动时间距离当前为1天的文件,即距离当前时间1天(24小时-48小时) ...
- Matlab mex编程
经典教程:mex 编程 http://classes.soe.ucsc.edu/ee264/Fall11/cmex.pdf Matlab 快速编程: http://www.ee.columbia.ed ...
- PreferenceActivity的使用
PreferenceActivity是一个非常有用的基类,当我们开发Android项目时避免不了选项设置,这些设置习惯用Preference来保存.Android专门为这种Activity提供了便捷的 ...
- web安全培训笔记
1.漏洞获取方法 1)扫描器扫描 2)乌云 3)线上服务漏洞 样例: 线上crm->管理员弱口令->后台上传头像处漏洞->上传php文件->进入内网->扫描内网拓扑-&g ...
- 指针做MAP的KEY的TEST
用struct做map的key会需要"operator <"等等,还会出现奇怪的问题可能. 试了下用指针做key,看看效果: #include <iostream> ...