Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Figma 数据结构:容器类图形的属性

Figma 数据结构:容器类图形的属性

作者头像
前端西瓜哥
发布于 2024-01-22 09:24:49
发布于 2024-01-22 09:24:49
4490
举报

大家好,我是前端西瓜哥。

今天我们来看看 Figma 的容器类图形的属性。

通用属性不讲,请看我之前的文章。

文档

DOCUMENT

文档是 Figma 文件的根目录,每个文件只有一个。

  • documentColorProfile:颜色配置文件,默认为 SRBG。

另外,有一个比较特殊的内置画布 Internal Only Canvas,是用来保存变量的。

画布

CANVAS

Figma 下可以有多个画布,类似 Excel 的 sheet。

画布的属性:

  • backgroundColor:背景色,rgba 对象;
  • backgroundEnabled:是否有背景色。如果为 false,会用灰白相间的棋盘网格背景表示透明;
  • exportBackgroundDisabled: 导出时是否不使用背景色;

图框

FRAME

  • resizeToFit:缩放图框后,图形是否会自适应,用以区分图框和组;
  • containerSupportsFillStrokeAndCorners:图框是否支持 fill、stroke、corner。如果为 true;
  • frameMaskDisabled:是否裁切掉溢出内容;
  • layoutGrids:网格布局,设置后会在画框顶部加一层网格线;

下面是一些 自动布局 相关属性,非常类似 CSS 的 flex 弹性布局。

  • stackMode:自动布局使用的模式,主轴方向。HORIZONTAL(水平排列)、VERTICAL(垂直排列)、NONE
  • stackWrap:换行模式。WRAP(换行,此时如果图框宽度固定,会自动换行,换行)、NO_WRAP(不换行)。
  • stackSpacing:主轴方向间距;
  • stackCounterSpacing:交叉轴方向间距;
  • stackPrimarySizing:主轴方向的宽或高是为固定值(FIXED),还是自适应内容(RESIZE_TO_FIT_WITH_IMPLICIT_SIZE);
  • stackCounterSizing:同 stackPrimarySizing,但交叉轴方向;
  • stackPrimaryAlignItems:主轴方向 item 的对齐方式;
  • stackCounterAlignItems:次轴方向 item 的对齐方式;
  • stackHorizontalPadding / stackVerticalPadding:水平方向和垂直方向 padding;
  • stackPaddingRight / stackPaddingBottom:右 padding 和底 padding;

组是功能受限的图框。

和图框相比,主要区别为 组的 resizeToFit 为 true,另外也不会使用图框的某些属性,比如自动布局相关的属性。

除了功能少了,在某些功能上也有区别。

比如对于图框,fill 这些属性是应用到图框上的,改变图框的背景色;如果是组,修改 fill 这些属性,其实是在修改容器内的所有图形的 fill 属性。

区域

SECTION

区域常用于将多个图框编组分类,比如把登录相关的图框放在同一个区域内。

它没有图框的自动布局等特性。

区域不能被其他类型容器元素嵌套,比如图框,但可以自己嵌套自己。

  • sectionStatusInfo:区域的状态信息,比如 { status: "BUILD" } 表示标记为可进入 dev 模式

布尔

BOOLEAN_OPERATION

可对多个图形进行布尔运算,得到一个布尔图形。

被布尔的原图形会保留下来,这样可以对原图形进行修改。

如果不希望保留原图形,可使用 Flatten(拍平)操作,合并为一个矢量网格图形。

  • booleanOperation:使用的布尔操作类型,值有:UNION(并集)、INTERSECT(交集)、SUBTRACT(减去顶层)、XOR(差集)

组件

SYMBOL

组件,或者叫图元。是将一些图形入库,然后多次使用它。

比如设计稿的按钮设计都一样的,一个个复制粘贴比较难管理,要修改的时候就要一个个改,很麻烦。

这时候我们可以把构成按钮的图形保存为组件,在需要的地方引用。

  • isSymbolPublishable:组件是否可发布;
  • sharedSymbolVersion:组件版本;

有趣的一点是,组件可以嵌套

组件如果被删除,它会被转移到内置画布中,成为变量一般的存在,这样可以保证引用它的实例能够找到原型。

组件实例

把图形设置为组件后,基于该组件生成图形,这种图形叫做 “实例”。

INSTANCE

  • symbolData:描述引用的组件 id,以及覆盖的属性,有些属性是可以被覆盖的的,比如填充色用蓝色覆盖组件原来的白色;
  • derivedSymbolData:继承组件后,实例的 geometry 值;
  • derivedSymbolDataLayoutVersion:派生组件数据布局版本(不知道干嘛的)。

结尾

我是前端西瓜哥,欢迎关注我,学习更多图形编辑器知识。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-01-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端西瓜哥 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
设计提效-Figma技巧篇
‍ 因为上一篇《设计提效-Figma插件篇》的不错反响,所以QQ团队的设计师们继续整理了一批超实用的提效秘籍,希望能助力大家一顿快捷操作猛如虎,早早打卡下班不辛苦。 一、快捷键面板|宝典大全
腾讯ISUX
2022/09/06
2K0
设计提效-Figma技巧篇
小程序开发实践:视图容器 view介绍,使用 view 搞定所有常见的 UI 布局
view 是最基础的,也是微信小程序第一个公布的容器组件。所谓容器组件,就像 HTML 里的 div 标签一样,是为容纳其它组件而存在的。它本身也可以有一些自己的样式,因为它本身也可以有样式,但它最重要的功能,是布局。
LIYI
2020/04/14
2.8K0
剖析 Figma 数据结构:不同图形的特有属性
两个 angle 的弧度值范围为 [0, PI*2),方向为顺时针,基准方向为正右(对应向量为 (1, 0))。
前端西瓜哥
2024/01/22
4970
剖析 Figma 数据结构:不同图形的特有属性
HarmonyOS NEXT - 通用属性
用户9936235
2025/03/31
970
鸿蒙开发:弹性布局Flex
正在开发一个搜索组件,其中一个功能是针对历史搜索的内容进行展示,由于搜索的内容长度不一,需要进行流式布局展示,效果如下:
程序员一鸣
2025/03/12
1380
鸿蒙开发:弹性布局Flex
css应知应会 第六集
作用:匹配的是,class属性值是一个由多个类选择器来组成的值列表(多类选择器),value是该列表中的一个独立选择器 的元素
李才哥
2020/08/17
1.7K0
css应知应会 第六集
CSS Flexbox与Grid:构建响应式布局的艺术
开启Flex布局模式。将一个元素设置为Flex容器,其直接子元素将成为Flex项目。
天涯学馆
2024/05/22
2510
CSS Flexbox与Grid:构建响应式布局的艺术
ArkUI容器类组件-弹性布局容器(Flex)
ArkUI 开发框架为了方便开发者实现灵活的页面布局方式,提供了弹性布局 Flex ,它用来为盒装模型提供最大的灵活性。 Flex 和 Row 、 Column 组件一样,也有主轴和纵轴之分。
小帅聊鸿蒙
2024/09/27
2890
ArkUI容器类组件-弹性布局容器(Flex)
Figma组件和自动布局的应用(三)
提到组件化,想必很多接触到大型项目的设计师都很有感触,可能不光是大型项目,就目前的一个产品开发的趋势,组件化都是一个不可逆的过程,越来越多的轻量型产品也都开始部署自己的组件库了。随着设计开发工具协同交叉的不断加强,设计师在做前期的产品设计时,也需要不断加强自己的组件化思维,这样既能够提升设计团队的生产力,也能让设计师更多的接触到产品需求及更专注于产品设计本身。
徐建国
2021/12/01
1.2K0
Figma组件和自动布局的应用(三)
图形化界面的开发(GUI)_Tkinter库的使用-2(Label+Message+Text)
本篇文章主要讲Tkinter库的Label标签控件,Message控件和文本控件Text,以及相对关的属性和方法以及示例。
laity
2025/02/27
2350
图形化界面的开发(GUI)_Tkinter库的使用-2(Label+Message+Text)
手把手带你上手D3.js数据可视化系列(一)手把手带你上手D3.js数据可视化系列(一)
上一篇文章「安利一些不错的D3.js资源 - 牛衣古柳 2021.06.29」的反响还不错,记得有新群友说是主管推给她文章才加过来的,也是很神奇。
古柳_DesertsX
2021/12/08
4.7K0
手把手带你上手D3.js数据可视化系列(一)手把手带你上手D3.js数据可视化系列(一)
Day4 chart基本属性分析
属性设置是基于chart实例的,所以我们必须先获取一个chart画板实例,获取方式: G2.Chart。创建 Chart 的方式如下:
IT人一直在路上
2019/09/16
5600
万字总结 CSS 布局
本文总结了主流的几种 CSS 的布局方法,无论你是一个想要学习 CSS 布局的新手,还是一个比较有经验但想要进一步巩固与了解最新CSS布局知识的前端开发者,这篇指南都能帮你全面了解如今CSS布局发展的现状。
用户8921923
2022/10/24
5.8K0
万字总结 CSS 布局
七、ArkTS 声明式UI-常用布局-弹性布局(Flex)
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-layout-development-flex-layout-V5
Harry技术
2025/01/13
1650
七、ArkTS 声明式UI-常用布局-弹性布局(Flex)
【Flutter实战】六大布局组件
老孟导读:Flutter中布局组件有水平 / 垂直布局组件( Row 和 Column )、叠加布局组件( Stack 和 IndexedStack )、流式布局组件( Wrap )和 自定义布局组件(Flow)。
老孟Flutter
2020/09/11
2K0
【Flutter实战】六大布局组件
Figma Variants组件集/变体组件(四)
Figma 官方对其超级组件使用的说明,害怕英文的同学可以查看这个链接,有个老哥已经将原版的翻译了一遍:https://www.figma.com/community/file/906004463907915536
徐建国
2021/12/01
1.4K0
Figma Variants组件集/变体组件(四)
CSS 零基础到实战(05)布局、盒子模型、弹性盒子【前端就业课 第二阶段】
流动布局有3种布局模型,分别是流动布局(常规默认时)、定位布局(relative)以及浮动布局,其中所述的流动布局、定位布局已在第一点讲解,接下来咱们查看浮动布局。
1_bit
2022/09/16
8750
CSS 零基础到实战(05)布局、盒子模型、弹性盒子【前端就业课 第二阶段】
CSS笔记
CSS中长度单位: px:像素(Pixel);em:相对长度单位,相对于当前对象内文本的字体尺寸;pt:点(Point),绝对长度单位;pc:派卡(Pica);in:英寸(Inch);mm:毫米;cm:厘米。 1 in = 2.54 cm = 25.4 mm = 72 pt = 6 pc
matt
2022/10/25
2.3K0
CSS笔记
【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发之常见布局
线性布局(LinearLayout)是开发中最常用的布局。线性布局的子组件在线性方向上(水平方向和垂直方向)依次排列。
枫叶丹
2025/01/20
2690
【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发之常见布局
Flutter(二)--布局机制、布局步骤、水平和垂直布局、组件大小动态调整Flutter(二)--布局机制、布局步骤、水平和垂直布局、组件大小动态调整
布局机制 flutter的布局机制是组件,flutter中几乎一切都是组件,除了图片、文字等,还有用来排列、限制、对齐这些可见组件的行、列、网格等(可理解为系统样式)。 image.png 布局步骤
用户8893176
2021/08/09
1.8K0
Flutter(二)--布局机制、布局步骤、水平和垂直布局、组件大小动态调整Flutter(二)--布局机制、布局步骤、水平和垂直布局、组件大小动态调整
推荐阅读
相关推荐
设计提效-Figma技巧篇
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档