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

QQ登录

只需一步,快速开始

Wilson.Zhang
超级版主   /  发表于:2025-4-25 16:34  /   查看:82  /  回复:0
区域快照虽然能引用单元格区域且实时同步其中的数据变化,但前人在使用过程中发现了一些限制,我们一起来了解下。

1. 区域快照渲染不支持单元格溢出,引用区域中溢出单元格的文本在区域快照中无法显示。可以在引用区域中合并单元格以完整显示长文本,或者对单元格自适应列宽。
参考帖子:https://gcdn.grapecity.com.cn/showtopic-235832-1-1.html

2. 打印或保存为PDF时,分页设置会根据纸张类型和尺寸对sheet进行切割,如果区域快照跨越了分页线,那么区域快照中的单元格边框将产生形变。这种情况下,可以在打印或保存为PDF前,通过Workbook:pageInfo()获悉分页情况,包括每页的行列范围,以此判断区域快照或其他形状是否位于单个sheet空间。对跨越多页的情况,可以调整图片尺寸以令其能够被单一sheet完整容纳。
参考帖子:https://gcdn.grapecity.com.cn/showtopic-235832-1-1.html

3. 区域快照所在位置的下行单元格填充了数据,当引用区域中插入新行后,区域快照会同步插入新行,以致区域快照沿着水平方向扩展覆盖了其原始位置下行单元格中的数据,如图1所示。同样地,当引用区域中删除行时,区域快照也会同步删除相对位置的行。

区域快照新增行.gif
图1. 区域快照新增行

参考原帖:https://gcdn.grapecity.com.cn/showtopic-230494-1-1.html

4. 区域快照被拖拽后发生形变,引用区域增删行后,区域快照尺寸不变,其中的隔行高和数据字体因新行插入引发的挤压现象而缩小,如图2所示。

区域快照内部字体缩小.gif
图2. 区域快照插入行后字体挤压

手动拖拽区域快照对其调整尺寸即确定了其最终形状,而在同步引用区域的增删行行为时,区域快照内部行扩充或缩减引发内部在现有尺寸范围内计算渲染,自然地,行高和字号相应地同步缩放。

面对这个现象,可以在确定引用区域不变时再创建区域快照,或者在引用区域增上行后删除原有区域快照并根据当前引用区域重新创建区域快照。如果想要以拖拽后的尺寸为基准,同步增删行行为调整区域快照的尺寸。
参考原帖:https://gcdn.grapecity.com.cn/showtopic-229932-1-1.html

关于上述限制3和4,可以参考如下链接中的博客:
SpreadJS 区域快照同步扩展自定义方案解析

上述仅目前使用过程发现的部分限制,如果未来发现了新的限制,会持续在本贴更新。

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部