excel怎么去背景水印([MyExcel] 水印添加)Excel教程 / Excel文档中的水印与背景设置...

wufei123 发布于 2024-06-06 阅读(14)

‬MyExcel,是一个集导入、导出、加密 Excel 等多项功能的 Java 工具包我们经常会遇到一些需要添加水印的场景,比如上传身份证图片会添加水印说明本图片仅用于身份验证,不做它用等等,Excel导出在部分情况下也存在类似场景。

在MyExcel中添加水印非常简单,最简单的仅需要一行代码,如:WatermarkUtil.addWatermark(workbook, "MyExcel导出水印");效果如下:

其原理是生成一张水印图片,然后作为背景重复展示下面我们看下具体的代码依赖导入Maven:com.github.liaochong

>myexcel4.3.3Gradle:compile group: com.github.liaochong, name:

myexcel, version: 4.3.3导出实现try (DefaultStreamExcelBuilder streamExcelBuilder = DefaultStreamExcelBuilder .of(Customer

.class) .sheetName("客户信息") .start()) { // 数据追加for (int i = 0; i <

100; i++) { Customer cus= new Customer(); cus.setName("姓名"+i); cus.setAge("年龄"

+i); streamExcelBuilder.append(cus); } // 最终构建 Workbook workbook = defaultExcelBuilder.build();

// 添加水印 WatermarkUtil.addWatermark(workbook, "MyExcel导出水印"); // for javax.servlet AttachmentExportUtil.export(workbook,

"客户信息", response); } publicclassCustomer{ @ExcelColumn(title="姓名")private String name; @ExcelColumn(title=

"年龄")private Integer age; @ExcelColumn(title="生日")private String birthday; }可以看到,WatermarkUtil作用的是POI的workbook,所以即使是使用其他工具生成的同样可以添加水印。

⚠️ 需要注意的是,当前仅支持xlsx类型workbook添加水印有些人可能会问,上述例子只能调整文本,如果我不想使用默认配置,希望使用其他颜色、字体、甚至设置水印之间的宽度,该如何处理呢?这个在MyExcel中也提供了相应的支持,除了默认设置外,用户也可以传入指定的配置,方法签名如下:。

publicstaticvoidaddWatermark(Workbook workbook, Watermark watermark)参数Watermark属性如下:text:需要展示的水印文本;color

:水印文本颜色,默认为深灰色-#C5CBCF;width:水印图片的宽度,默认为200;height:水印图片的高度,默认为180;font:字体,默认microsoft-yahei,size-16;最后

MyExcel功能非常丰富,如需了解其他功能,请予以留言或移步至仓库文档:Home · liaochong/myexcel Wiki · GitHub

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

河南中青旅行社综合资讯 奇遇综合资讯 盛世蓟州综合资讯 综合资讯 游戏百科综合资讯 新闻67604