2021-06-22 加水印后原本EXCEL内容被覆盖
主要代码
Workbook workbook = new SXSSFWorkbook(200);//sheet页名和表头Sheet sheet = workbook.createSheet(paramMap.get("modelDesc"));paramMap.put("index_lvl", paramMap.get("index_lvl"));//显示字段paramMap.put("is_show", "1");//是否显示字段//主表表头标题、子表表头标题paramMap.put("main_flag", "1");String auditType = paramMap.get("auditType");Map<String, String> auditTypeInfo = auditDataUtilMapper.getAuditTypeInfo(auditType);String listTableName = auditTypeInfo.get("mainTableName");paramMap.put("listTableName",listTableName);List<Map<String, String>> fieldConfig = auditModelDetailMapper.selectDetailFieldConfig(paramMap);// ----------------------- 组装sheetData(colNames,colDatas,tableName,dataList) ----------------------Map<String, Object> sheetDataForResult = getSheetDataForResult(fieldConfig, paramMap);List<String> sheetColNames = (List<String>) sheetDataForResult.get("sheetColNames");List<String> sheetColCode = (List<String>) sheetDataForResult.get("sheetColCode");List<String> sheetColFormats = (List<String>) sheetDataForResult.get("sheetColFormats");List<String> sheetShowFlags = (List<String>) sheetDataForResult.get("sheetShowFlags");Row row1 = sheet.createRow(0);for (int i = 0; i < sheetColNames.size(); i++) {if (sheetShowFlags.get(i).equals("1")) {row1.createCell(i).setCellValue(sheetColNames.get(i));}}listMainData = auditModelDetailMapper.selectListMainData(paramMap);//全部0//生成表格数据for (int i = 0; i < listMainData.size(); i++) {Row row = sheet.createRow(i + 1);for (int j = 0; j < sheetColCode.size(); j++) {if (sheetShowFlags.get(j).equals("1")) {row.createCell(j).setCellValue(listMainData.get(i).get(sheetColCode.get(j).toUpperCase()));}}}//添加水印workbook = ExcelUtils.addBgOfExcel("*****平台", (SXSSFWorkbook) workbook);return workbook;
水印部分代码
PoiUtil.Watermark watermark = new PoiUtil.Watermark();watermark.setText(bgChar);//生成水印图片BufferedImage image = PoiUtil.createWatermarkImage(watermark);// 导出到字节流BXSSFWorkbook workbook = workbookSXSS.getXSSFWorkbook();ByteArrayOutputStream os = new ByteArrayOutputStream();ImageIO.write(image, "png", os);int pictureIdx = workbook.addPicture(os.toByteArray(), Workbook.PICTURE_TYPE_PNG);POIXMLDocumentPart poixmlDocumentPart = workbook.getAllPictures().get(pictureIdx);for (int i = 0; i < workbook.getNumberOfSheets(); i++) {//获取每个Sheet表XSSFSheet sheet = workbook.getSheetAt(i);PackagePartName ppn = poixmlDocumentPart.getPackagePart().getPartName();String relType = XSSFRelation.IMAGES.getRelation();//add relation from sheet to the picture dataPackageRelationship pr = sheet.getPackagePart().addRelationship(ppn, TargetMode.INTERNAL, relType, null);//set background picture to sheetsheet.getCTWorksheet().addNewPicture().setId(pr.getId());}return workbook;
2021-06-22 加水印后原本EXCEL内容被覆盖相关推荐
- Bug消灭记:透明 png 图片加水印后变成黑问题
背景 本周四晚下班后,领导火急火燎地电话我,说公司某个产品的系统配置模块在配置登录 Logo 的时候,上传一个透明底色的 png 图片,结果变成了黑色背景色,让我修复一下这个 Bug . 领导初步怀疑 ...
- excel加水印,由于excel没有加水印功能,实际上操作是将图片丢进去
目录 1.依赖 2.controller层代码 3.工具类 1.依赖 <!--excel poi--><dependency><groupId>org.apache ...
- 图片加水印后下载(满屏水印,单个水印,可自定义角度)
现阶段需要实现图片导出添加水印的内容,查询资料总结了如下的图片导出加水印工具类,分享给大家 工具类实现内容: 图片添加满屏水印后保存到固定地址 图片添加满屏水印后以输出流输出 图片左上角添加单个水印 ...
- pdf批量加水印后打包下载
pdf相关依赖: <dependency> <groupId>com.itextpdf</groupId><artifactId>itextpdf< ...
- 在Java生成的html页面加水印,Java在Excel中添加水印的实现(单一水印、平铺水印)...
在Excel中没有直接添加水印的功能,但依旧可以通过一定方式来实现类似水印效果.本文通过Java程序代码介绍具体实现方法.可添加单一水印效果,即水印是以单个文本字样来呈现:也可添加多个平铺水印效果,即 ...
- python爬虫获取的网页数据为什么要加[0-[Python爬虫] 等待网页加载后再获取内容...
0x0 背景 最近在学习Python爬虫的相关知识,主要是之前有一个小idea想要用Python实现,沉寂了一年,近期终于下定决心要利用假期时间首要解决此项任务,不然拖到最后都没完成,自己遗憾不说,还 ...
- python修改excel内容怎么覆盖_Python修改Excel的内容,python,excel
import openpyxl import os import os.path as osp def readexcel(disease,proint,antiint,memoryint,doubl ...
- 再见水印软件!2行Python给图片加水印,太太太强了
人生苦短,快学Python! 版权相当重要,对于某张图片,可能是你精心制作的思维导图,或者你精心设计的某个logo.你可能花费好多时间来弄,最后却被别人直接搬运过去使用,好气哦! 基于此,本文我就带着 ...
- bmp图片加水印C语言,[求助]C语言 bmp文件加上水印
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 给一张图片加水印后存起来然后显示出来 有部分源码 求高手帮忙完成~! #include #include /* structure defiens bit ...
- php绘图技术加水印,PHP图片添加水印功能示例小结
本文实例总结了PHP图片添加水印功能.分享给大家供大家参考,具体如下: 例1.很简单图下添加水印函数 /** * 追加水印 * * @param string $source_img 原始图片url ...
最新文章
- C#编程概念系列(一):面向对象编程
- Ispur服务器收集系统日志,centos 7.2往rsyslog服务器端发送系统日志
- opencv实现图片HDR功能
- optee3.14中的异常向量表解读--中断处理解读
- Spring字段依赖注入示例
- Python:通过SNMP协议获取华为交换机的ARP地址表
- Flink流式处理百万数据量CSV文件
- 创建数据账号只有个别表的权限_只有普通权限账号,如何把远程数据库中该用户的数据表导入到本地数据库?...
- linux下搭建测试环境
- codeforces 722C Destroying Array
- 使用Certbot为nginx配置免费的https证书
- 索尼为收购工作室准备,对抗微软?
- 什么是HTTP状态码?常见HTTP状态码盘点
- 傅里叶变化,短时傅里叶分析,小波变换
- 将sql数据导入mysql数据库_将sql导入mysql数据库
- 抄作业计算机叫,有种尴尬叫“抄作业”,答案是“B”抄成了13,抄错答案哄堂大笑...
- 科研人,如何辨别期刊是正规期刊
- 动物派对怎么修改服务器,动物派对登录失败怎么办 Party Animals玩法进入游戏解决方法...
- 解决 Windows 11 记事本崩溃闪退
- 2022年十一届认证杯D题