日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

剖析 Figma 圖形對象的基本屬性

來源: 責編: 時間:2024-05-16 09:09:21 226觀看
導讀大家好,我是前端西瓜哥。今天我們來看看 Figma 圖形對象的一些基本屬性。這些屬性來自 fig 文件,更貼近 Figma 圖形的底層數據結構。Figma 也提供了 REST API 接口獲取設計稿的圖形樹結構,且大多數屬性和 fig 文件的相同

8aF28資訊網——每日最新資訊28at.com

大家好,我是前端西瓜哥。8aF28資訊網——每日最新資訊28at.com

今天我們來看看 Figma 圖形對象的一些基本屬性。8aF28資訊網——每日最新資訊28at.com

這些屬性來自 fig 文件,更貼近 Figma 圖形的底層數據結構。8aF28資訊網——每日最新資訊28at.com

Figma 也提供了 REST API 接口獲取設計稿的圖形樹結構,且大多數屬性和 fig 文件的相同,文檔說明也更詳細。8aF28資訊網——每日最新資訊28at.com

但有些屬性在底層屬性上做了一層封裝,以提供更好的語義。比如在 REST API 的數據有 rotation 屬性,但 fig 文件并沒有,需要通過 transform 矩陣屬性計算出來。8aF28資訊網——每日最新資訊28at.com

https://www.figma.com/developers/api#node-types8aF28資訊網——每日最新資訊28at.com

基本屬性

guid:圖形 id 對象,用于唯一標識圖形。8aF28資訊網——每日最新資訊28at.com

它有兩個屬性:sessionID(會話 id,每個 socket 連接一個唯一 id),以及 localID(一個自增 id),二者組合可得到一個在和本地圖形和其他客戶端圖形都不同的唯一 id,以便實現協同編輯。8aF28資訊網——每日最新資訊28at.com

{  "sessionID": 1,  "localID": 7}

phase:通常是 CREATED,表示創建。貌似使用了 quill 的 delta 風格。不知道有沒有其他的值,比如 delete 這些。8aF28資訊網——每日最新資訊28at.com

parentIndex:父節點 id。fig 的數據結構是拍平的一維數組,加載時需要根據 parentIndex 還原為圖形樹結構。8aF28資訊網——每日最新資訊28at.com

type:圖形(或者說是節點)類型,比如 ROUNDED_RECTANGLE(圓角矩形)、VECTOR(矢量網格)。還有一些非圖形的類型,如 VARIABLE(變量,比如顏色變量)。8aF28資訊網——每日最新資訊28at.com

name:圖形名。8aF28資訊網——每日最新資訊28at.com

visible:是否可見。8aF28資訊網——每日最新資訊28at.com

locked:是否鎖定,鎖定的圖形不可選擇,不可通過光標移動。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

opacity:不透明度,介于 0 到 1 之間。0 表示完全透明,1表示完全不透明。8aF28資訊網——每日最新資訊28at.com

blendMode:混合模式,表示當前節點和其下的圖層以何種形式混合。默認為 PASS_THROUGH(穿透)。8aF28資訊網——每日最新資訊28at.com

size:一個對象,x 為寬,y 為高。屬性名不是 width 和 height,大概因為用了矢量結構體。8aF28資訊網——每日最新資訊28at.com

transform:一個表達 3x3 矩陣的對象,會對節點進行矩陣變換。8aF28資訊網——每日最新資訊28at.com

size 和 transform 可以表達一個變形的矩形,包括位移、旋轉、翻轉、斜切等。8aF28資訊網——每日最新資訊28at.com

這種表達方式很簡潔,方便做 GPU 并行渲染,也便于直轉 SVG。8aF28資訊網——每日最新資訊28at.com

proportionsConstrained:是否鎖定寬高比。如果為 true,輸入框修改寬時,高會自動更新,保持原來的寬高比,反之同理。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

cornerRadius:圓角半徑。8aF28資訊網——每日最新資訊28at.com

cornerSmoothing:平滑圓角程度,比如 60% 對應 iOS 圖標的平滑程度。8aF28資訊網——每日最新資訊28at.com

horizontalConstraint / verticalConstraint:圖形的水平和垂直約束,指定在 frame(畫框)縮放時圖形縮放或移動的方式。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

支持的類型值有:8aF28資訊網——每日最新資訊28at.com

  • MIN:默認值,向左或向上保持固定距離。
  • MAX:向右或向下保持固定距離。
  • CENTER:向 frame 的中心點保持相對距離。
  • STRETCH:拉伸,向左(上)和向右固定距離,縮放 frame 會引起圖形拉伸。
  • SCALE:保持相對 frame 的比例關系。

handleMirroring:拖拽控制點調整路片段(segment)時,入控制點(handleIn)和出控制點(handleOut)的鏡像關系。8aF28資訊網——每日最新資訊28at.com

有三種形式:8aF28資訊網——每日最新資訊28at.com

  • NONE,默認值,無鏡像關系,兩個控制點各自獨立;
  • ANGLE,角度一致但長度各自獨立,表現為:修改一個控制點,兩個控制點和路徑點都在一條直線上,但另一個控制點到路徑點的長度保持不變;
  • ANGLE_AND_LENGTH,角度和長度相同,即完全 路徑點對稱,見下圖。

8aF28資訊網——每日最新資訊28at.com

填充

fillPaints:填充對應的 Paint 數組。8aF28資訊網——每日最新資訊28at.com

比如下面是SOLID(純色)的表示。8aF28資訊網——每日最新資訊28at.com

fillPaints: [  {    "type": "SOLID",    "color": {      "r": 0.7631543278694153,      "g": 0.9063313603401184,      "b": 0.6506586074829102,      "a": 1    },    "opacity": 1,    "visible": true,    "blendMode": "NORMAL" // 這里也有混合模式  },]

數組前面的填充會覆蓋掉后面的填充。8aF28資訊網——每日最新資訊28at.com

此外 Figma 還支持 IMAGE(圖片)、GRADIENT_LINEAR(線性漸變)、GRADIENT_LINEAR(徑向漸變)、GRADIENT_ANGULAR(旋轉漸變)、GRADIENT_DIAMOND(菱形漸變)、VIDEO (視頻)等 PaintType 類型。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

fillGeometry:大概是填充對應的圖形化描述,指向一個 Buffer 對象,能轉成類型數組,但不知道什么解析。8aF28資訊網——每日最新資訊28at.com

但如果使用開發者 REST API,這個屬性得到的是 SVG 的 Path 描述;8aF28資訊網——每日最新資訊28at.com

描邊

strokePatins:描邊數組,基本和 fillPaints 一樣。8aF28資訊網——每日最新資訊28at.com

strokeGeometry:同 fillGeometry。8aF28資訊網——每日最新資訊28at.com

strokeWeight:描邊寬度。8aF28資訊網——每日最新資訊28at.com

dashPattern:數字數組,描述虛線描邊的規則,指定連續的 “實線-虛線-實線-...” 這樣循環下去,參考 SVG 的 stroke-dasharray 屬性。8aF28資訊網——每日最新資訊28at.com

strokeAlign:描邊對齊,默認為 INSIDE(內描邊),此外還有 CENTER(往兩邊擴展)、OUTSIDE(外描邊)。8aF28資訊網——每日最新資訊28at.com

strokeCap:描邊路徑兩端的樣式,默認為 NONE,除了經典的 SQUARE、ROUND,還有特殊的 LINE_ARROW、CIRCLE_FILLED 等值,可以產生箭頭或其他特殊樣式。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

strokeJoin:路徑轉角的處理方式。MITER(斜接)、 BEVEL(倒角) 和 ROUND(圓角)。8aF28資訊網——每日最新資訊28at.com

miterLimit:對斜角長度與線寬比例的閾值,在 strokeJoin 為 milter 時有效,表示為超過閾值時,尖角會變成 bevel。的效果。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

編輯器 UI 上并沒有這個屬性,但有個 Miter angle 屬性,它和 miterLimit 的轉換關系為:miterLimit = miterLength / stroke-width = 1 / sin (theta / 2)。可以參考 SVG 的 stroke-milterlimit 屬性。8aF28資訊網——每日最新資訊28at.com

下圖中,藍色路徑的轉角突破了閾值,小于 28.96,于是從 miter 變成了bevel。8aF28資訊網——每日最新資訊28at.com

8aF28資訊網——每日最新資訊28at.com

borderStrokeWeightsIndependent:邊框線是否各自獨立設置線寬。8aF28資訊網——每日最新資訊28at.com

borderTopWeight / borderBottomWeight / borderLeftWeight / borderRightWeight:圖形的 4 個邊框的寬度,當前面這個 borderStrokeWeightsIndependent 屬性為 true 時會使用。8aF28資訊網——每日最新資訊28at.com

效果

effects:效果數組。8aF28資訊網——每日最新資訊28at.com

有這幾種效果:8aF28資訊網——每日最新資訊28at.com

  • DROP_SHADOW:外陰影;
  • INNER_SHADOW:內陰影;
  • BACKGROUND_BLUR:背景模糊,該圖層下的背景會被模糊掉,類似毛玻璃效果,通常這個圖形要設置透明度;
  • FOREGROUND_BLUR:前景模糊(貌似就是高斯模糊)

蒙版

mask:圖形是否作為蒙版,設置為蒙版圖形的前面的兄弟節點不在被蒙版區域的部分不會被渲染;8aF28資訊網——每日最新資訊28at.com

maskType:指定蒙版類型。默認是 ALPHA (基于透明度),此外還有 VECTOR(基于圖形輪廓線)、LUMINANCE(基于明度)。8aF28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-88375-0.html剖析 Figma 圖形對象的基本屬性

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Go 事件驅動編程:實現一個簡單的事件總線

下一篇: 一次炫技差點引發的慘案

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
欧美视频在线免费| 欧美日韩一二三区| 欧美一区二区三区在线观看视频| 欧美在线视频网站| 免费看黄裸体一级大秀欧美| 欧美精品免费观看二区| 国产精品色婷婷久久58| 狠狠狠色丁香婷婷综合久久五月| 亚洲区国产区| 亚洲欧美日韩国产成人精品影院| 久久精品亚洲精品国产欧美kt∨| 欧美成人免费全部| 国产精品系列在线| 亚洲国产综合在线看不卡| 亚洲午夜未删减在线观看| 久久久久一区二区三区| 欧美日韩免费一区| 狠狠色狠狠色综合日日tαg| 99re66热这里只有精品4 | 久久国产精品久久久久久久久久| 久久一区二区视频| 欧美色欧美亚洲高清在线视频| 国产亚洲一区二区三区在线播放| 亚洲日本欧美在线| 欧美在线视频网站| 欧美日韩国产高清视频| 国产有码在线一区二区视频| 亚洲美女视频在线观看| 久久国产精品高清| 欧美视频一区二区三区…| 影音先锋久久精品| 亚洲一区二区三区免费观看 | 欧美一区二区黄色| 欧美激情第五页| 国产一区二区三区在线观看视频| 9l视频自拍蝌蚪9l视频成人| 国产亚洲a∨片在线观看| 亚洲欧洲视频| 久久久99免费视频| 国产精品乱码一区二三区小蝌蚪| 亚洲人体大胆视频| 久久久久久久999精品视频| 国产精品国产一区二区| 亚洲日本在线观看| 久久影音先锋| 国产一区二区三区久久悠悠色av | 午夜视频在线观看一区| 欧美日韩精品一二三区| 亚洲高清一区二区三区| 久久久久成人网| 国产精品亚洲第一区在线暖暖韩国| 亚洲精品国久久99热| 久久综合国产精品| 国产亚洲综合在线| 午夜综合激情| 国产精品久在线观看| 日韩天天综合| 欧美激情1区2区3区| 永久免费视频成人| 久久人人爽人人| 国产在线麻豆精品观看| 亚洲欧美日韩综合| 国产精品久久久久久亚洲毛片| 日韩一二三在线视频播| 欧美成人免费在线观看| 亚洲第一区在线观看| 久久久免费av| 伊人久久大香线| 久久人91精品久久久久久不卡| 国产中文一区| 久久久激情视频| 国产在线观看精品一区二区三区| 西西裸体人体做爰大胆久久久| 国产精品黄色| 亚洲男人第一av网站| 国产精品久久久久9999| 亚洲神马久久| 国产精品成人v| 亚洲永久网站| 国产麻豆精品视频| 欧美一级一区| 国产一区日韩二区欧美三区| 欧美亚洲在线| 国产亚洲综合在线| 久久综合色婷婷| 在线日韩日本国产亚洲| 免费欧美视频| 亚洲精品看片| 欧美久久电影| 在线亚洲电影| 国产精品一卡| 在线色欧美三级视频| 免费亚洲电影| 亚洲精品之草原avav久久| 欧美激情va永久在线播放| 亚洲精选91| 欧美视频精品一区| 亚洲男人影院| 国内精品久久久久久 | 久久网站热最新地址| 亚洲国产精品123| 欧美日本成人| 亚洲一区二区三区精品视频| 国产麻豆精品久久一二三| 欧美在线播放视频| 亚洲国产精品嫩草影院| 欧美久久久久中文字幕| 亚洲一区二区免费在线| 国精品一区二区三区| 欧美a级在线| 一区二区高清| 国产欧美一区二区精品忘忧草 | 另类专区欧美制服同性| 亚洲麻豆一区| 国产精品一区免费在线观看| 久久久久欧美精品| 亚洲三级影片| 国产精品日韩电影| 久久一区免费| 99视频精品免费观看| 国产欧美一区二区精品性色| 可以看av的网站久久看| 一区二区三区偷拍| 国产一区二区三区四区| 欧美精品啪啪| 欧美一级片一区| 亚洲国产综合91精品麻豆| 国产精品成人播放| 久久久无码精品亚洲日韩按摩| 亚洲国产美女久久久久| 国产精品二区在线观看| 久久乐国产精品| 亚洲深夜福利网站| 一区二区三区在线免费视频| 欧美日韩亚洲一区三区| 久久久久亚洲综合| 中文在线不卡| 在线观看国产日韩| 国产精品久久久一区麻豆最新章节| 久久久久综合网| 亚洲一区二区日本| 亚洲黄色影片| 国产三级精品三级| 欧美日韩国产一区精品一区| 久久精品人人做人人爽| 中国女人久久久| 在线观看视频一区二区| 国产精品久久久久久久久久直播| 蜜臀久久99精品久久久画质超高清| 亚洲欧美成人精品| 亚洲人午夜精品| 国产一区二区日韩精品| 欧美日韩三级在线| 老司机成人网| 欧美在线播放一区二区| 一区二区三区福利| 亚洲国产99精品国自产| 国产女主播视频一区二区| 欧美精品午夜视频| 久久琪琪电影院| 欧美一区二区三区日韩| 一本色道久久加勒比88综合| 原创国产精品91| 国产亚洲精品久久飘花 | 国产真实精品久久二三区| 国产精品成人免费| 欧美国产日韩一区二区三区| 久久激情久久| 亚洲综合丁香| 一区二区不卡在线视频 午夜欧美不卡在| 一区二区视频在线观看| 国产色综合天天综合网| 国产精品久久777777毛茸茸| 欧美区日韩区| 欧美激情精品久久久久久大尺度 | 国产欧美一区二区精品忘忧草 | 激情综合色综合久久| 国产欧美日韩视频在线观看| 欧美日韩在线看| 欧美人在线观看| 欧美精品麻豆| 欧美电影资源| 麻豆91精品| 欧美在线视频播放| 亚洲欧美高清| 亚洲一区二区免费| 这里只有精品视频| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲黄色成人| 亚洲电影在线观看| 在线观看av不卡| 激情文学一区| 黄色成人av网站| 国语精品中文字幕| 国外成人免费视频| 狠狠色噜噜狠狠色综合久 | 在线视频你懂得一区| 一区二区三区高清视频在线观看| 日韩系列欧美系列| 一区二区激情视频| 亚洲午夜在线视频| 亚洲欧美国产精品桃花| 香蕉成人啪国产精品视频综合网| 性色一区二区三区|