poi-tl icon indicating copy to clipboard operation
poi-tl copied to clipboard

插入excel附件之图标异常

Open PhotonIV opened this issue 2 years ago • 12 comments

相同的数据,在服务器上导出word时,第一次下载的excel附件图标是正常的,见图1;第二次图标就变形了,见图2 image 图1

5F2EU D}53)P1M0VM@GGCI4 图2

PhotonIV avatar May 09 '22 02:05 PhotonIV

目前发现这个问题出现的版本1.11.1 1.12.0

PhotonIV avatar May 09 '22 02:05 PhotonIV

使用wps打开不会出现图标异常,用word打开才出现这个异常

PhotonIV avatar May 09 '22 02:05 PhotonIV

在本地调试的时候也出现了图标异常问题,之前使用1.10.2的时候,图标异常会出现在服务器端,本地不会出现

PhotonIV avatar May 09 '22 02:05 PhotonIV

@PhotonIV 你代码AttachmentRenderData指定一个图片试试?

Sayi avatar May 09 '22 02:05 Sayi

@Sayi 好的 我试试

PhotonIV avatar May 09 '22 02:05 PhotonIV

@Sayi 自定义图片效果一样,第一次下载正常,第二次图标就不正常了,本地环境和服务器环境都是。

PhotonIV avatar May 09 '22 03:05 PhotonIV

刚刚尝试的版本是1.11.1

PhotonIV avatar May 09 '22 03:05 PhotonIV

image 你好sayi,在引用了1.12.0的包后,PictureRenderData改成了抽象类,本来想在1.12.0自定义图标,但是抽象类没法实例化

PhotonIV avatar May 09 '22 03:05 PhotonIV

你把图标不正常的word发我邮箱下。

1.12.0使用具体的类实例化或者使用Pictures构造器:http://deepoove.com/poi-tl/#_%E5%9B%BE%E7%89%87

Sayi avatar May 09 '22 04:05 Sayi

    public void downloadReport1( HttpServletResponse response) throws IOException {         Configure config = Configure.builder().bind("annex", new AttachmentRenderPolicy()).build();         Map<String, Object> map = new HashMap<String, Object>();         String file = "template/test.xlsx";         AttachmentRenderData attachmentRenderData = Attachments.ofLocal(file, AttachmentType.XLSX).create();         map.put("annex", attachmentRenderData);         XWPFTemplate template = XWPFTemplate.compile("template/test.docx", config).render(map);         response.setContentType("application/force-download");         response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode("test.docx", "UTF-8"));         template.writeAndClose(response.getOutputStream());     }

刘灶新 @.***

 

------------------ 原始邮件 ------------------ 发件人: "Sayi/poi-tl" @.>; 发送时间: 2022年5月9日(星期一) 中午12:00 @.>; @.@.>; 主题: Re: [Sayi/poi-tl] 插入excel附件之图标异常 (Issue #785)

你把图标不正常的word发我邮箱下。

1.12.0使用具体的类实例化或者使用Pictures构造器:http://deepoove.com/poi-tl/#_%E5%9B%BE%E7%89%87

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>

PhotonIV avatar May 09 '22 06:05 PhotonIV

你好sayi,我分析了一下word的xml,发现正常的word的xml如下 image 异常的wordxml如下: Z7T)3SOR13I76OKONXJX ZF 看上去是shapeId的问题,所以我重写了attrachmentRenderPolicy 这是原来的代码: image 现在我把判断去掉了,当然这样可能会引起多sheet的excel打印异常,不过我这里是单sheet的,所以我就暂时这样处理了 9Y2VZONSJV`F6L9D U9(Z$H 最后测试了一下,每次打印的图标都是正常的 image

PhotonIV avatar May 09 '22 08:05 PhotonIV

按照上面的方法重写AttachmentRenderPolicy的doRender方法,还是会出现下面的问题: word文档中插入两个附件:word附件和Excel附件 打开xlsx附件之前 image 打开xlsx附件之后,Excel附件图标变小 image

janlee151 avatar Aug 21 '23 07:08 janlee151