cheng1 发表于 2022-12-20 15:37:08

导出EXCEL 后发生图片发生变形(SJS-16355)

本帖最后由 Lynn.Dou 于 2022-12-22 17:50 编辑

用spread js设计表格 样式如下图





然后导出excel,打开后:

下面一个签名变形了。最上面的一个签名,没有变化
再把这个excel再导入到spreadjs里看又没有问题。
原因可能是: excel导出后,会发现列都变宽了,貌似这个图片,就会随着列宽进行了拉宽,所以变形了。而如果图片右侧靠近列边,就会进行2次拉宽,所以变形明显。

Lynn.Dou 发表于 2022-12-20 16:15:26

您好,
问题已复现,已将此问题记录下来进一步调研原因,待有进展会在贴中通知您。
本贴先做保留处理。

Clark.Pan 发表于 2023-1-11 13:43:10

您好,这个问题经过调查,确认不是bug,列宽本身在Excel中,英文版本和中文版本就是不同的,原因是默认字体的原因。
微软的office Excel的英文版中默认字体是calibri,而在office Excel中文版中默认字体是等线。
另外据了解在一些其他的第三方Excel软件中默认字体还会有其他变化,例如WPS中默认字体就改为了宋体。
而SpreadJS中的默认字体跟微软office Excel的英文版是保持一致的,也就是calibri。
您的这个Excel我看过就是WPS生成的,默认字体是宋体。这就导致了默认字体与SpreadJS默认字体不一致。于是造成了列宽导入之后发生了变化。
解决问题的话有两种方案,要么更改您那边Excel的默认字体为Calibri,然后重新保存。
要么更改SpreadJS的默认字体,这个可以参考这篇帖子中的解决方案
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=157795&page=1&extra=
页: [1]
查看完整版本: 导出EXCEL 后发生图片发生变形(SJS-16355)