找回密码
 立即注册

QQ登录

只需一步,快速开始

Derrick.Jiao 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-5-7 15:02  /   查看:2646  /  回复:0
本帖最后由 DerrickJiao 于 2021-5-7 16:41 编辑

自动吸附,可以理解为是一种对齐方式,一共有三种不同的吸附方式:none、grid、shape。该特性可以序列化和反序列化为json,由于Excel不支持,因此,该特性不支持Excel的导入导出。

那么形状的吸附对齐是以什么为基准呢?就是以下面两张不同方向的吸附线为基准。
在水平方向移动时,形状会对齐下面三条线的位置。
image.png315507811.png

在垂直方向移动时,形状会对齐下面三条线的位置。
image.png199613036.png
形状上的8个点都可以吸附
image.png330342101.png

我们再来说一下三种吸附方式,第一种none,就是默认的随意拖放或者调整大小不会进行吸附;第二种是grid,形状会根据调整上面的点与网格线的距离去与最近的网格线位置进行吸附;第三种是shape,与网格线类似,会找到与该形状想接近的形状,以此形状的顶部中部底部为基准去对齐。其实还有第四种,就是grid与shape,也就是根据网格线和就近的形状同时为基准进行吸附。

要想修改吸附的模式也很简单,使用下面的代码即可
  1. var sheet = spread.getActiveSheet();
  2.     sheet.shapes.snapMode(GC.Spread.Sheets.Shapes.SnapMode.grid | GC.Spread.Sheets.Shapes.SnapMode.shape);
复制代码

另外,形状的对齐排列有水平对齐与垂直对齐。 image.png658146667.png

设置的方式是以命令的形式执行,例如:
  1. var commandManager = spread.commandManager();
  2.     commandManager.execute({
  3.         cmd: 'moveShapesByHAlign',
  4.         sheetName: sheet.name(),
  5.         shapeNames: ['rect1','line1','heart1','group1'],
  6.         alignment: GC.Spread.Sheets.Shapes.HorizontalAlign.left
  7.     });
复制代码



0 个回复

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