请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

contextual1868

注册会员

2

主题

8

帖子

18

积分

注册会员

积分
18
  • 231

    金币

  • 2

    主题

  • 8

    帖子

最新发帖
contextual1868
注册会员   /  发表于:2025-10-28 18:21  /   查看:64  /  回复:3
1金币
pictures.add添加的图片导出没有,图片需要是base64吗?

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

3 个回复

Wilson.Zhang
超级版主   /  发表于:2025-10-29 09:28:04
沙发
您好!sheet.pictures.add()向sheet中添加的图片是浮动对象,SpreadJS当前的版本不支持导出浮动对象至xlsx文件中。可以给上述API传入图片的base64码作为数据源,这样可以导出至xlsx文件中。

此外,从SpreadJS V15.2.0开始,在形状中支持了图片形状,sheet.shapes.addPictureShape(),支持的图片源包括本地目录中存储的图片、网络资源、图片base64,且均可导出至xlsx文件,更灵活。
建议您参考官网学习指南【图片形状】了解详情。

回复 使用道具 举报
contextual1868
注册会员   /  发表于:2025-10-29 09:45:22
板凳
本帖最后由 contextual1868 于 2025-10-29 09:46 编辑

1、sheet.shapes.addPictureShape()的位置是根据表格左上角定位的,要每行都有一个图片在固定列展示不方便,有什么好办法吗?2、addpicture,如果全用base64,那文件数据不是很大,如果有很多条数据会导致表格打开和下载过慢的问题嘛?
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2025-10-29 14:14:55
地板
contextual1868 发表于 2025-10-29 09:45
1、sheet.shapes.addPictureShape()的位置是根据表格左上角定位的,要每行都有一个图片在固定列展示不方便 ...

1. addPictureShape()成功添加图片后返回图片对应的PictureShape对象,通过startRow()start Column()startRowOffset()startColumnOffset()等API可设置其位置,如下图所示API:


2. 文件体积和其中数据量有一定关系,即便是单个体积很小的数据,文件中包含10个和100个这种数据造成的文件体积也有一定相差,数据量相差越大,相应地,文件体积相差也越大。
对于大体积文件,导入导出都会消耗一定时间和性能。导入时,需要加载文件中的内容来渲染在页面上显示,导出时也要逐一序列化写出到目标格式的文件中。
SpreadJS支持设置导入和导出选项以分别支持导入导出效率优化,具体可以参考官网学习指南了解:
文件导入导出

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部