v2.4.0
发布时间: 2024/04/25
更新如下
-
AutoLayout
新增- flexWrap 表示是否折行。
- crossaxisspacing 换行模式下,交叉轴不同轨道之间的间距。
- crossAxisAlignContent 交叉轴的对齐方式。
v2.3.0
发布时间: 2023/02/04
更新如下
-
TeamLibaray
中的
Teamlibrarycomponent
新增
-
cover
封面地址。 -
width
宽度(旧团队库宽度可能为0)。 -
height
高度(旧团队库高度可能为0)。
-
v2.2.0
发布时间: 2023/11/30
更新如下
-
TextSegStyle
新增
fillStyleId
填充样式id字段。
v2.0.0
发布时间: 2023/09/28
更新如下
- 新增 SectionNode 区域节点。
-
saveversionhistoryasync
增加历史版本支持可选的标题参数(/apis/mastergo.html#saveversionhistoryasync)
v1.21.0
发布时间: 2023/07/06
更新如下
- ComponentNode 和 ComponentSetNode 新增 DocumentationLinks ,获取和设置组件文档链接。
v1.20.0
发布时间: 2023/04/27
更新如下
- 新增 node.isMaskOutline 能力支持
- 新增 node.isMaskVisible 能力支持
- 新增 textNode.textAutoResize = 'TRUNCATE' 能力支持。
v1.19.0
发布时间: 2023/04/11
更新如下
- 新增 manifest.permissions 能力支持
- 新增 mg.currentUser 接口,可获取用户信息。
v1.18.0
发布时间: 2023/04/07
更新如下
- 容器图层新增 Expanded 属性来控制左侧树的展开和收起
- 实例新增 Resetoverrides 来重置自身所有的更改。
v1.17.0
发布时间: 2023/03/31
更新如下:
-
ComponentNode 和 ComponentSetNode 的实例切换属性(instance_swap)新增首选项 PreferredValue ,设置实例切换的首选项。
-
InstanceNode 新增 ExposedInstances 属性,将自身的组件属性公开给父图层的组件/组件集。
-
InstanceNode 新增 isExposedInstance 表示此实例是否向包含自己的 ComponentNode 或 ComponentSetNode 公开自身的组件属性。仅在 ComponentNode 或 ComponentSetNode 中包含的主 InstanceNode 上可写,只在嵌套的 InstanceNode 上继承。
-
GroupNode 和 BooleanOperationNode 不再支持设置约束 Constraints , GroupNode 和 BooleanOperationNode 只受子图层约束影响。
v1.16.0
发布时间: 2023/03/21
更新如下:
- 新增 mg.combineAsVariants 方法将一组 ComponentNode 节点组合成 ComponentSetNode 节点。
v1.15.0
发布时间: 2023/03/16
更新如下:
- 新增 mg.notify 方法支持设置显示时间和loading,并且支持主动关闭。
- 新增 attachedConnectors 表示吸附到节点的连接线节点数组。
v1.14.0
发布时间: 2023/02/07
更新如下:
- 图层新增异步导出接口 exportAsync ,此接口在图层包含图片时会加载原图。
v1.13.0
发布时间: 2023/01/12
更新如下:
-
添加了对组件属性功能的支持,在以下每种节点类型上具有新的属性和函数:
-
ComponentSetNode
-
ComponentNode(非状态组件)
-
SceneNode(必须是组件子图层,并且不嵌套在实例节点中)
-
InstanceNode
InstanceNode
上的 setProperties 函数用作更新组件属性。ComponentSetNode
上的 componentPropertyDefinitions 属性现已弃用。它将继续返回变量组属性,但建议使用新的组件属性定义属性。变量属性将继续使用,设置时仍然需使用变量相关api。
-
-
导出设置新增 useRenderBounds 属性来控制导出时是否包含图层的外部描边和阴影绘制所占区域,默认为
true
。 -
定位属性新增 absoluteBoundingBox ,只读属性,用来获取当前图层的绝对定位属性,返回值类型为 Rect 。
-
定位属性新增 absoluteRenderBounds ,只读属性,用来获取当前图层的绝对定位属性,其值受旋转、填充、阴影、描边等效果影响,返回值类型为 Rect 。
v1.12.0
发布时间: 2022/12/20
更新如下:
- 添加 mg.ui.moveTo 方法。
- 添加 mg.ui.viewport 属性
提供移动插件ui视窗的接口,以及视窗的相关属性,可用于获取当前ui视窗信息、定位校验、插件ui内外的坐标系换算等场景。
v1.11.0
发布时间: 2022/12/15
更新如下:
- 添加 getNodeByPosition 方法。
该方法与鼠标点击画布类似,据给定的画布中的世界坐标,查找相应的节点。如果没有找到对应的节点,则返回
null
。
可以用于校验画布中添加图层的定位和信息,判断目标图层是否被遮挡等场景,或者与 pluginDrop 功能结合,实现“拖拽”进入容器,例如:
const containers = new Set<(SceneNode | PageNode)['type']>(['BOOLEAN_OPERATION','FRAME', 'COMPONENT', 'GROUP', 'PAGE'])
mg.on('drop', (dropEvent: DropEvent) => {
const {dropMetadata, absoluteX, absoluteY} = dropEvent;
const currentPage = mg.document.currentPage;
// 获取对应坐标的容器
let target = mg.getNodeByPosition({x: absoluteX, y: absoluteY});
while(target && !containers.has(target.type)){
target = target.parent;
const parent = target || currentPage;
mg.createNodeFromSvgAsync(dropMetadata.svg)
.then((frame) => {
frame.x = absoluteX - frame.width / 2,
frame.y = absoluteY - frame.height / 2,
parent.appendChild(frame)
mg.document.currentPage.selection = [frame]
mg.commitUndo();
-
文字图层分段样式新增
lineHeightByPx
字段,表示文字图层在画布中以px为单位的行高数值,当
lineHeight
为百分比或自动行高时,通过这个字段能够读取文字分段样式中实际行高的像素值。
v1.10.2
发布时间: 2022/12/13
更新如下:
- 废弃 teamLibrary , 改用异步方法 getTeamLibraryAsync 。
- 添加 mg.mixed 属性。
- 修改 rescale 描述和边界限制,从限制单次缩放系数最小值,改成限制缩放后图层尺寸最小值
v1.10.0
发布时间: 2022/12/01
更新如下:
-
文字图层和样式支持设置百分比和自动行高
const textNode = mg.createText(); textNode.characters = 'text' //自动行高 textNode.setRangeLineHeight(0, 3, { unit: 'AUTO' }); console.log(textNode.textStyles[0].textStyle.lineHeight); // { unit: 'AUTO' } //百分比行高 textNode.setRangeLineHeight(0, 3, { unit: 'PERCENT', value: 50 }); console.log(textNode.textStyles[0].textStyle.lineHeight); // { unit: 'PERCENT', value: 50 } //创建文字样式 const textStyle = mg.createTextStyle({ id: textNode.id, name: 'textStyle', description: 'desc' }) //自动行高 textStyle.lineHeight = { unit: 'AUTO' }; console.log(textStyle.lineHeight); // { unit: 'AUTO' } //百分比行高 textStyle.lineHeight = { unit: 'PERCENT', value: 50 }; console.log(textStyle.lineHeight); // { unit: 'PERCENT', value: 50 }
v1.9.0
发布时间: 2022/11/24
更新如下:
- 全局新增 拼合 接口: flatten
- 图层新增 等比缩放 接口: rescale
- 图层新增 水平/垂直翻转 接口: flip
- 文件、页面和容器类图层新增 按类型查找 接口: findAllWithCriteria
- 文字新增 设置填充样式 接口: setRangeFillStyleId
- 文字新增 设置文字样式 接口: setRangeTextStyleId
- createComponent 和 createFrame 支持传入子图层数组。
-
removed
为true
的图层现在访问和修改属性会有提示。
v1.8.0
发布时间: 2022/11/18
更新如下:
-
clientStorage
新增 keysAsync 获取所有键名 和 deleteAsync 删除对应键名数据 接口。
async function getKeys() {
const keys: string[] = await mg.clientStorage.keysAsync()
console.log('AllKeys', keys)
async function deleteKey(key:string) {
await mg.clientStorage.deleteAsync(key)
const data: undefined = await mg.clientStorage.getAsync(key)
console.log(`Data with key ${key} is removed`)