导出带有图片的excel
public static void main(String[] args) {
try {
FileOutputStream out = new FileOutputStream("d:\\excel13.xls");
HSSFWorkbook wb = new HSSFWorkbook();
Font headFont = wb.createFont();
headFont.setFontName("宋体");
headFont.setFontHeightInPoints((short) 18);// 字体大小
headFont.setBold(true);// 字体大小
CellStyle headStyle = wb.createCellStyle();
headStyle.setFont(headFont);
headStyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
headStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
//创建sheet页
HSSFSheet sheet = wb.createSheet("农村集体监督资金支付明细");
sheet.setColumnWidth(0,4500);
sheet.setColumnWidth(1,3500);
sheet.setColumnWidth(2,3000);
sheet.setColumnWidth(3,4500);
sheet.setColumnWidth(4,3000);
sheet.setColumnWidth(5,3000);
//创建行
HSSFRow row0 = sheet.createRow(0);
row0.setHeight((short)800);
//创建单元格
HSSFCell cell00 = row0.createCell(0);
//往单元格中设置值
cell00.setCellValue("农村集体监督资金支付明细");
cell00.setCellStyle(headStyle);
//合并单元格
sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 5));
Font cellFont = wb.createFont();
cellFont.setFontName("宋体");
cellFont.setFontHeightInPoints((short) 12);// 字体大小
CellStyle cellStyle = wb.createCellStyle();
cellStyle.setFont(cellFont);
cellStyle.setBorderRight(BorderStyle.THIN);
cellStyle.setBorderBottom(BorderStyle.THIN);
cellStyle.setBorderLeft(BorderStyle.THIN);
cellStyle.setBorderTop(BorderStyle.THIN);
cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
CellStyle cellStyle2 = wb.createCellStyle();
cellStyle2.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
cellStyle2.setFont(cellFont);
HSSFRow row1 = sheet.createRow(1);
row1.setHeight((short)500);
HSSFCell cell10 = row1.createCell(0);
cell10.setCellValue("申请单位");
cell10.setCellStyle(cellStyle2);
HSSFCell cell11 = row1.createCell(1);
cell11.setCellValue("");
cell11.setCellStyle(cellStyle2);
HSSFCell cell15 = row1.createCell(5);
cell15.setCellValue("");
cell15.setCellStyle(cellStyle2);
sheet.addMergedRegion(new CellRangeAddress(1, 1, 1, 4));
HSSFRow row2 = sheet.createRow(2);
row2.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row2.createCell(i);
if(i==0){
cell.setCellValue("款项用途");
}else if(i==2){
cell.setCellValue("yiyi");
}else{
cell.setCellValue("");
}
cell.setCellStyle(cellStyle);
}
sheet.addMergedRegion(new CellRangeAddress(2, 2, 1, 5));
HSSFRow row3 = sheet.createRow(3);
row3.setHeight((short)500);
HSSFCell cell30 = row3.createCell(0);
for(int i=0;i<6;i++){
HSSFCell cell = row3.createCell(i);
if(i==0){
cell.setCellValue("金额");
}else if(i==1){
cell.setCellValue("yiyi");
}else if(i==5){
cell.setCellValue(11);
}else{
cell.setCellValue("");
}
cell.setCellStyle(cellStyle);
}
sheet.addMergedRegion(new CellRangeAddress(3, 3, 1, 4));
HSSFRow row4 = sheet.createRow(4);
row4.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row4.createCell(i);
if(i==0){
cell.setCellValue("付款方式");
}else if(i==1){
cell.setCellValue("单笔转账支付");
}else{
cell.setCellValue("");
}
cell.setCellStyle(cellStyle);
}
sheet.addMergedRegion(new CellRangeAddress(4, 4, 1, 5));
HSSFRow row5 = sheet.createRow(5);
row5.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row5.createCell(i);
if(i==0){
cell.setCellValue("付款人名称");
}else if(i==3){
cell.setCellValue("付款人账号");
}else{
cell.setCellValue("");
}
cell.setCellStyle(cellStyle);
}
sheet.addMergedRegion(new CellRangeAddress(5, 5, 1, 2));
sheet.addMergedRegion(new CellRangeAddress(5, 5, 4, 5));
HSSFRow row6 = sheet.createRow(6);
row6.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row6.createCell(i);
if(i==0){
cell.setCellValue("收款人名称");
}else if(i==3){
cell.setCellValue("收款人账号");
}else{
cell.setCellValue("");
}
cell.setCellStyle(cellStyle);
}
sheet.addMergedRegion(new CellRangeAddress(6, 6, 1, 2));
sheet.addMergedRegion(new CellRangeAddress(6, 6, 4, 5));
CellStyle cellStyle3 = wb.createCellStyle();
cellStyle3.setFont(cellFont);
cellStyle3.setBorderRight(BorderStyle.THIN);
cellStyle3.setBorderBottom(BorderStyle.THIN);
cellStyle3.setBorderLeft(BorderStyle.THIN);
cellStyle3.setBorderTop(BorderStyle.THIN);
cellStyle3.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
cellStyle3.setAlignment(HorizontalAlignment.CENTER);// 上下居中
HSSFRow row7 = sheet.createRow(7);
row7.setHeight((short)600);
for(int i=0;i<6;i++){
HSSFCell cell7 = row7.createCell(i);
if(i==0){
cell7.setCellValue("审批情况");
}else{
cell7.setCellValue("");
}
cell7.setCellStyle(cellStyle3);
}
sheet.addMergedRegion(new CellRangeAddress(7, 7, 0, 5));
CellStyle cellStyle4 = wb.createCellStyle();
cellStyle4.setFont(cellFont);
cellStyle4.setBorderRight(BorderStyle.THIN);
cellStyle4.setBorderBottom(BorderStyle.THIN);
cellStyle4.setBorderLeft(BorderStyle.THIN);
cellStyle4.setBorderTop(BorderStyle.THIN);
cellStyle4.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
cellStyle4.setAlignment(HorizontalAlignment.CENTER);
HSSFRow row8 = sheet.createRow(8);
row8.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row8.createCell(i);
if(i==0){
cell.setCellValue("职务");
}else if(i==1){
cell.setCellValue("审核审批状态");
}else if(i==2){
cell.setCellValue("审核审批意见");
}else if(i==3){
cell.setCellValue("");
}else if(i==4){
cell.setCellValue("审核审批人签字");
}else if(i==5){
cell.setCellValue("审核日期");
}
cell.setCellStyle(cellStyle4);
}
sheet.addMergedRegion(new CellRangeAddress(8, 8, 2, 3));
HSSFRow row9 = sheet.createRow(9);
row9.setHeight((short)500);
for(int i=0;i<6;i++){
HSSFCell cell = row9.createCell(i);
if(i==0){
cell.setCellValue("职务");
}else if(i==1){
cell.setCellValue("审核审批状态");
}else if(i==2){
cell.setCellValue("审核审批意见");
}else if(i==3){
cell.setCellValue("");
}else if(i==4){
try {
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
BufferedImage bufferImg = null;
ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
bufferImg = ImageIO.read(new File("F:\\小憩\\Map.png"));
ImageIO.write(bufferImg, "png", byteArrayOut);
HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 1023, 250,(short) 4, 9, (short) 4, 9);
anchor.setAnchorType(ClientAnchor.AnchorType.DONT_MOVE_AND_RESIZE);
patriarch.createPicture(anchor, wb.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_PNG));
} catch (IOException e) {
e.printStackTrace();
}
}else if(i==5){
cell.setCellValue("审核日期");
}
cell.setCellStyle(cellStyle4);
}
sheet.addMergedRegion(new CellRangeAddress(9, 9, 2, 3));
wb.write(out);
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
导出带有图片的excel的更多相关文章
- java 导出blob图片到excel
实现功能,导出当前页面显示员工的图片,核心代码已给出,仅供参考, 如需转载请注明出处http://www.cnblogs.com/wangjianguang/p/7852060.html 随便再扯2句 ...
- 导出包含图片的excel、word、pdf 笔记
/** * 导出word * @throws Exception */ @Override public byte[] WordExport( List<VbLibGlobalAnalyList ...
- 导出带图片的Excel——OOXML文件分析
需求: 普通js导出文件excel具有兼容性问题,通过js-xsl导出文件API未找到导出图片的方案,实例过少,因此针对07年后以.xlsx后缀的excel文件,通过修改后缀.zip参考文件模板来实现 ...
- C#导出带有格式的Excel(列宽,合并单元格,显示边框线,加背景颜色等)
源地址:http://blog.sina.com.cn/s/blog_74f702e60101au55.html 导出excel相关设置:http://blog.csdn.net/wanmingtom ...
- eclipse导出带有图片、音效、其他二进制文件的jar文件的经历
先说下简单流程吧: 1.选中“项目”,右键->export->java的“jar file”->勾选“export generated clas files and resource ...
- Java POI 导出带有图片的word
1. 引入maven ,具体可以上github看一下,这里做简单的说明,是一个大神封装了一下 官方提供的语法 文本语法是 {{Text}} 图片语法是{{@Image}} 其他的自己去看官方文档 &l ...
- JAVA将Excel中的报表导出为图片格式(一)问题背景
如题所示,先抛出一个问题,如何使用JAVA将Excel中的报表导出为图片格式? 首先说一下这个问题的背景,也就是为什么博主会碰到这个问题 随着微信,易信之流大行其道,企业内部的办公交流.绩效考评甚至考 ...
- OpenXml Excel数据导入导出(含图片的导入导出)
声明:里面的很多东西是基于前人的基础上实现的,具体是哪些人 俺忘了,我做了一些整合和加工 这个项目居于openxml做Excel的导入导出,可以用OpenXml读取Excel中的图片 和OpenXml ...
- Laravel Excel模板导出-带图片
Laravel Excel版本 3.1 1.数据准备 建个2个表,加点数据,控制器中查数据,给模板使用. 表1-order:id, order_no, img_path, note 表2-order_ ...
随机推荐
- python爬虫爬取安居客并进行简单数据分析
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 爬取过程一.指定爬取数据二.设置请求头防止反爬三.分析页面并且与网页源码进行比对四.分析页面整理数据 ...
- Centos8 Docker+Nginx部署Asp.Net Core Nginx正向代理与反向代理 负载均衡实现无状态更新
首先了解Nginx 相关介绍(正向代理和反向代理区别) 所谓代理就是一个代表.一个渠道: 此时就涉及到两个角色,一个是被代理角色,一个是目标角色,被代理角色通过这个代理访问目标角色完成一些任务的过程称 ...
- Windows 安装 Go语言开发环境
Windows 安装 Go语言开发环境 下载安装包 下载地址:http://www.golangtc.com/download 32 位请选择名称中包含 windows-386 的 msi 安 ...
- [leetcode]692. Top K Frequent Words频率最高的前K个单词
这个题的排序是用的PriorityQueue实现自动排列,优先队列用的是堆排序,堆排序请看:http://www.cnblogs.com/stAr-1/p/7569706.html 自定义了优先队列的 ...
- JavaDailyReports10_07
动手动脑① 1 package test_1; 2 3 public class Test { 4 5 public static void main(String[] args) { 6 // TO ...
- Trick:如何去掉html标签点击时的蓝色边框
我们在用html标签时,如input.button.select,img标签时,点击标签经常出现一个蓝色的边框,这个边框真的很low,想要去掉怎么办 其实,css有样式可以设置一下,这个问题就轻松 ...
- 知乎上看到的一篇讲解Epoll的文章,较形象生动
作者:蓝形参链接:https://www.zhihu.com/question/20122137/answer/14049112来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- HTTP 常用状态码200 301 302 403 500
200(OK):成功处理了请求. 301 redirect: 301 代表永久性转移(Permanently Moved) //助记 1 永恒,如果你记住了这一条就算这篇博客没白写.302 redir ...
- 企业集群架构-03-NFS
NFS 目录 NFS NFS基本概述 NFS应用场景 NFS实现原理 NFS总结 NFS服务端安装 环境准备 服务端安装NFS 服务端NFS配置 服务端开机自启 服务端验证配置 NFS客户端挂载卸载 ...
- light-rtc: 理念与实践
在与同行交流过程中,发现很多同行对 WebRTC 改动太多,导致无法升级 WebRTC 版本.而 WebRTC 开源社区的快速迭代,让他们感到欣喜又焦虑:开源社区的迭代效果,是不是超过了他们对 Web ...