找回密码
 立即注册

QQ登录

只需一步,快速开始

卑微的打工狗
金牌服务用户   /  发表于:2023-8-8 17:07  /   查看:2110  /  回复:7
1金币
1.采用自定义单元格的方式展示的图片,已转成base64格式。

2.使用excelIo方式导出excel,并未展示图片,附上demo。

自定义单元格导出excel图片异常.zip

1.61 MB, 下载次数: 96

最佳答案

查看完整内容

首先,自定义单元格是spreadjs特有属性,excel并不支持,因为excel中没有对应的功能支撑,所以无法显示。 如果在spreadjs中使用的自定义单元格展示图片,可以在导出excel之前创建文件副本,对副本中的自定义单元格做额外处理,过程为: 1. 定位自定义单元格位置; 2. 将自定义单元格的图片改为调用excel中能支持的sheet.shapes.addPictureShape() 重新加载。如需固定图片位置,spreadjs有对应的api。 3. 导出处理完的副本。 ...

7 个回复

倒序浏览
最佳答案
最佳答案
Winny
超级版主   /  发表于:2023-8-8 17:07:22
来自 8#
卑微的打工狗 发表于 2023-8-8 17:36
那这里有没有什么办法解决呢?原本单元格位置展示的是url图片地址,现通过自定义单元格的方法,把图片展 ...

首先,自定义单元格是spreadjs特有属性,excel并不支持,因为excel中没有对应的功能支撑,所以无法显示。
如果在spreadjs中使用的自定义单元格展示图片,可以在导出excel之前创建文件副本,对副本中的自定义单元格做额外处理,过程为:
1. 定位自定义单元格位置;
2. 将自定义单元格的图片改为调用excel中能支持的sheet.shapes.addPictureShape()  重新加载。如需固定图片位置,spreadjs有对应的api。
3. 导出处理完的副本。
通过上边操作,可以实现。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-8 17:31:12
2#
您好,这是因为自定义单元格是SpreadJS的特性,是无法与Excel兼容的,所以无法显示。

您可以在SpreadJS中直接插入图片,此时导出到Excel中是可以正常显示的。
回复 使用道具 举报
卑微的打工狗
金牌服务用户   /  发表于:2023-8-8 17:36:21
3#
本帖最后由 卑微的打工狗 于 2023-8-8 17:37 编辑
Joestar.Xu 发表于 2023-8-8 17:31
您好,这是因为自定义单元格是SpreadJS的特性,是无法与Excel兼容的,所以无法显示。

您可以在SpreadJS ...

那这里有没有什么办法解决呢?原本单元格位置展示的是url图片地址,现通过自定义单元格的方法,把图片展示成想要的图片,如何再导出excel中,带出图片
回复 使用道具 举报
卑微的打工狗
金牌服务用户   /  发表于:2023-8-8 17:40:24
4#
Joestar.Xu 发表于 2023-8-8 17:31
您好,这是因为自定义单元格是SpreadJS的特性,是无法与Excel兼容的,所以无法显示。

您可以在SpreadJS ...

我看到自定义单元格展示图片中,通过  this.spread.savePDF 方法导出pdf文件,是可以导出图片的。请问导出excel是否也有相对应的方法???
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-9 10:07:27
5#
导出为PDF时是使用的浏览器的导出逻辑,与导出Excel并不是一个逻辑。

您可以直接使用addPictureShape接口来实现插入图片的功能:

var shape = sheet.shapes.addPictureShape("Picture 1", "https://b.bdstatic.com/searchbox/icms/searchbox/img/cheng_girl.png", 100, 50, 100, 100);

效果如下:

image.png840206603.png
回复 使用道具 举报
卑微的打工狗
金牌服务用户   /  发表于:2023-8-9 10:29:10
6#
Joestar.Xu 发表于 2023-8-9 10:07
导出为PDF时是使用的浏览器的导出逻辑,与导出Excel并不是一个逻辑。

您可以直接使用addPictureShape接 ...

使用   sheet.shapes.addPictureShape 方法,进行插入图片的方案可行性不大,已经被pass掉了,要不然也不会采用自定义单元格的方式实现图片的显示。请问再自定义单元格显示图片下,如何再excel中展示图片???
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-9 14:15:53
7#
您好,自定义单元格是不支持导出到Excel中的,因此是无法在导出后的Excel中展示图片。

要导出到Excel中还保持图片的正常显示只能使用SpreadJS原生添加图片的接口。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部