主要代码

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内容被覆盖相关推荐

  1. Bug消灭记:透明 png 图片加水印后变成黑问题

    背景 本周四晚下班后,领导火急火燎地电话我,说公司某个产品的系统配置模块在配置登录 Logo 的时候,上传一个透明底色的 png 图片,结果变成了黑色背景色,让我修复一下这个 Bug . 领导初步怀疑 ...

  2. excel加水印,由于excel没有加水印功能,实际上操作是将图片丢进去

    目录 1.依赖 2.controller层代码 3.工具类 1.依赖 <!--excel poi--><dependency><groupId>org.apache ...

  3. 图片加水印后下载(满屏水印,单个水印,可自定义角度)

    现阶段需要实现图片导出添加水印的内容,查询资料总结了如下的图片导出加水印工具类,分享给大家 工具类实现内容: 图片添加满屏水印后保存到固定地址 图片添加满屏水印后以输出流输出 图片左上角添加单个水印 ...

  4. pdf批量加水印后打包下载

    pdf相关依赖: <dependency> <groupId>com.itextpdf</groupId><artifactId>itextpdf< ...

  5. 在Java生成的html页面加水印,Java在Excel中添加水印的实现(单一水印、平铺水印)...

    在Excel中没有直接添加水印的功能,但依旧可以通过一定方式来实现类似水印效果.本文通过Java程序代码介绍具体实现方法.可添加单一水印效果,即水印是以单个文本字样来呈现:也可添加多个平铺水印效果,即 ...

  6. python爬虫获取的网页数据为什么要加[0-[Python爬虫] 等待网页加载后再获取内容...

    0x0 背景 最近在学习Python爬虫的相关知识,主要是之前有一个小idea想要用Python实现,沉寂了一年,近期终于下定决心要利用假期时间首要解决此项任务,不然拖到最后都没完成,自己遗憾不说,还 ...

  7. python修改excel内容怎么覆盖_Python修改Excel的内容,python,excel

    import openpyxl import os import os.path as osp def readexcel(disease,proint,antiint,memoryint,doubl ...

  8. 再见水印软件!2行Python给图片加水印,太太太强了

    人生苦短,快学Python! 版权相当重要,对于某张图片,可能是你精心制作的思维导图,或者你精心设计的某个logo.你可能花费好多时间来弄,最后却被别人直接搬运过去使用,好气哦! 基于此,本文我就带着 ...

  9. bmp图片加水印C语言,[求助]C语言 bmp文件加上水印

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 给一张图片加水印后存起来然后显示出来 有部分源码 求高手帮忙完成~! #include #include /* structure defiens bit ...

  10. php绘图技术加水印,PHP图片添加水印功能示例小结

    本文实例总结了PHP图片添加水印功能.分享给大家供大家参考,具体如下: 例1.很简单图下添加水印函数 /** * 追加水印 * * @param string $source_img 原始图片url ...

最新文章

  1. C#编程概念系列(一):面向对象编程
  2. Ispur服务器收集系统日志,centos 7.2往rsyslog服务器端发送系统日志
  3. opencv实现图片HDR功能
  4. optee3.14中的异常向量表解读--中断处理解读
  5. Spring字段依赖注入示例
  6. Python:通过SNMP协议获取华为交换机的ARP地址表
  7. Flink流式处理百万数据量CSV文件
  8. 创建数据账号只有个别表的权限_只有普通权限账号,如何把远程数据库中该用户的数据表导入到本地数据库?...
  9. linux下搭建测试环境
  10. codeforces 722C Destroying Array
  11. 使用Certbot为nginx配置免费的https证书
  12. 索尼为收购工作室准备,对抗微软?
  13. 什么是HTTP状态码?常见HTTP状态码盘点
  14. 傅里叶变化,短时傅里叶分析,小波变换
  15. 将sql数据导入mysql数据库_将sql导入mysql数据库
  16. 抄作业计算机叫,有种尴尬叫“抄作业”,答案是“B”抄成了13,抄错答案哄堂大笑...
  17. 科研人,如何辨别期刊是正规期刊
  18. 动物派对怎么修改服务器,动物派对登录失败怎么办 Party Animals玩法进入游戏解决方法...
  19. 解决 Windows 11 记事本崩溃闪退
  20. 2022年十一届认证杯D题

热门文章

  1. 华为2019年3月软件开发工程师机考题解答 C++实现
  2. 学术论文的标准格式是什么?写论文有哪些小技巧?
  3. 当你迷茫的时候,来看看这篇让你变好的文章
  4. 华为荣耀鸿蒙系统安装谷歌商店
  5. python截取视频制作gif表情包
  6. 小说网站服务器架构图,搭建小说网站用什么程序?搭建小说网站图文教程_好特教程...
  7. 分而治之——最大子列和
  8. 解读机器人编程入门指南
  9. win7系统关闭445端口批处理脚本
  10. 6.泛型方法:什么是泛型方法???