java poi 导出背景透明图片,图片变黑,怎么解决?

终日乾乾 发布于 2015/10/23 14:51
阅读 750
收藏 0
POI

用poi向Excel中插入图片,图片本身是透明背景的,插入进去就变成黑的了。(非透明背景图片是好使的)

这似乎是因为图片不能被完全等比压缩造成的。但图片在表格中占位是这样的:

HSSFClientAnchor(起始单元格中的起始距离X, 起始单元格中的起始距离Y终止单元格中的终止距离X, 终止单元格中的终止距离Y,起始行, 起始列,终止行, 终止列); 

根本没办法做到完全等比压缩。

想着把图片背景变成白色,但Graphics2D的setBackground(Color.white)方法对于透明背景失效。

想着把这个透明图片覆盖到纯白色图片上,也没找到靠谱的办法,试了几次都不成功。

我该怎么办?

加载中
0
首席老司机
首席老司机
我没记错的话,用windows自带的照片查看器打开背景透明的GIF,然后关掉,这张GIF的背景就会变成有色的。原来修图的时候特别烦别人点开我的gif看就是这个原因。
终日乾乾
终日乾乾
@终日乾乾 费大力把图片背景弄成了白色,结果放进去之后,图片变红了。我也是无语了。
终日乾乾
终日乾乾
回复 @烧水煮鸭子 : 不知道那4个参数要怎么算啊,也不知道像素和单元格距离怎么对应的,本以为改图片会简单些。哎
首席老司机
首席老司机
回复 @终日乾乾 : 如果真是等比压缩的问题,建议你先获取到压缩参数,再外面自己写算法压缩了再插到excel里面。
终日乾乾
终日乾乾
图片格式是jpg的,开关并不好使(- 。-)
0
cavion
cavion
我也遇到这问题,楼主解决了吗?给说下,谢谢
终日乾乾
终日乾乾
并没有,合成图片后背景又变红了
返回顶部
顶部