發(fā)布時(shí)間:2024-07-24 13:42:22 瀏覽量:355次
大家好,我是前端西瓜哥。
畫(huà)布縮放是圖形編輯器的基礎(chǔ)功能,作用是放大圖形編輯細(xì)節(jié),縮小總覽全局。我們來(lái)看看 Figma 是如何做畫(huà)布縮放設(shè)計(jì)的。
使用 zoom 表示畫(huà)布的縮放比。
比如 zoom 為 1(即 100%),表示畫(huà)布不進(jìn)行縮放,為原始大小。zoom 為 2 表示畫(huà)布放大一倍。zoom 為 0.5 表示畫(huà)布縮小一倍。
放大畫(huà)布對(duì)應(yīng) zoomIn 方法,zoom 值是變大的。
zoomIn 的 in 是指將鏡頭靠近場(chǎng)景的意思,近所以圖形大,所謂 “近大遠(yuǎn)小”。
縮放畫(huà)布則是 zoomOut,zoom 值變小。鏡頭遠(yuǎn)離場(chǎng)景,因此圖形會(huì)變小。
通常我們會(huì)在 UI 界面上提供畫(huà)布縮放和放大按鈕,點(diǎn)擊它們會(huì) 以畫(huà)布中心為縮放中心,進(jìn)行縮放。
快捷鍵為:
我發(fā)現(xiàn) Figma 實(shí)際上直接用 + 或 - 就能縮放了,但它在 UI 上并沒(méi)有提示。
Figma 在這種情況下會(huì)讓 zoom 值落在幾個(gè)特定的值上。
const zoomLevels = [ 0.015625, 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256]
你應(yīng)該看出規(guī)律了,這是一個(gè)等比數(shù)列,公比為 2,其中的中間值是 1(即 100%)。同時(shí) 256 和 0.015625 也是 zoom 的最大最小值。
比如當(dāng)前 zoom 為 198%,放大會(huì)變成 200%,縮小會(huì)變?yōu)?100%。
下面是找到排序數(shù)組中,在目標(biāo)值兩邊的數(shù)組元素的方法。
const getNearestVals = (arr, target) => { let left = 0; let right = arr.length - 1; while (left <= right) { const mid = Math.floor((left + right) / 2); if (arr[mid] === target) { right = mid - 1; left = mid + 1; break; } else if (arr[mid] < target) { left = mid + 1; } else { right = mid - 1; } } if (right < 0) right = 0; if (left >= arr.length) left = arr.length - 1; return [arr[right], arr[left]];};getNearestVals(zoomLevels, 1.98) // [1, 2]
這樣用戶就能快速、大幅度地更改 zoom,快速抵達(dá)最值,查看跨度較大的不同 zoom 的設(shè)計(jì)稿效果。
你可能發(fā)現(xiàn) UI 上的 zoom 好像對(duì)不上,比如應(yīng)該是 0.125 的,但 UI 上卻顯示為 13%。這里其實(shí)并沒(méi)有在數(shù)據(jù)層做舍入,而是在 UI 顯示上做了四舍五入。
如果想拿到真實(shí) zoom 值,可通過(guò) Figma 的插件 API 的 figma.viewport.zoom 屬性獲取。
但有些情況下,用戶會(huì)覺(jué)得這樣縮放幅度可能有點(diǎn)大了,需要幅度更低的縮放,這時(shí)候可以用鼠標(biāo)滾輪縮放。
Figma 也支持通過(guò)滾輪的方式縮放,且會(huì) 基于縮放比率 zoomRatio,并以光標(biāo)位置為縮放中心進(jìn)行縮放。
按住 Ctrl 或 Command,滾輪向前為放大,向后為縮小。
// 縮放比率const zoomRatio = 1.23// 放大畫(huà)布zoom * zoomRatio// 縮小畫(huà)布zoom / zoomRatio
zoomRatio 不是寫(xiě)死的,和 鼠標(biāo)滾輪靈敏度 有關(guān)。
(下面是 Windows 設(shè)置鼠標(biāo)滾輪靈敏度的方式)
鼠標(biāo)滾輪靈敏度會(huì)反應(yīng)到 WheelEvent 滾輪事件對(duì)象的 deltaY 上,靈敏度越高,每次滾動(dòng)的 deltaY 就越大。
我們需要定義一個(gè)函數(shù):傳入 deltaY,拿到一個(gè)縮放比率 zoomRatio。
這個(gè)函數(shù)的返回值在 0 到 2 之間,且為對(duì)數(shù)關(guān)系,即 x 越大,y 的值越平緩。
順帶一提,mac 觸控板不是常規(guī)輸入設(shè)備,所以不在滾輪事件標(biāo)準(zhǔn)之內(nèi)。
但觸控板的縮放操作會(huì)倍瀏覽器里轉(zhuǎn)換為 ctrl + 滾輪 的滾輪行為,也是可以拿到 deltaY 的,但值非常小,所以你會(huì)看到它的縮放幅度是滾輪是不一樣的。
Figma 也支持其他的縮放操作。
Figma 沒(méi)有做專門(mén)的縮放畫(huà)布工具,應(yīng)該是認(rèn)為沒(méi)有必要的,比較多余,用快捷鍵就夠了。
偏好設(shè)置有一個(gè) Invert zoom direction(翻轉(zhuǎn)縮放畫(huà)布方向)勾選項(xiàng)。勾選后,向前滾輪反而會(huì)減小 zoom 值。
我是前端西瓜哥,歡迎關(guān)注我,學(xué)習(xí)更多圖形編輯器知識(shí)。
熱門(mén)資訊
1. 照片變漫畫(huà)效果,這4個(gè)方法操作簡(jiǎn)單有效,快來(lái)試試吧!
想將照片變成漫畫(huà)效果?這篇文章分享了4個(gè)方法,包括Photoshop、聰明靈犀、VanceAI Toongineer、醒圖,簡(jiǎn)單操作就能實(shí)現(xiàn),快來(lái)嘗試一下吧!
2. 華為手機(jī)神奇“AI修圖”功能,一鍵消除衣服!原圖變身大V領(lǐng)深V!
最近華為手機(jī)Pura70推出的“AI修圖”功能引發(fā)熱議,通過(guò)簡(jiǎn)單操作可以讓照片中的人物換裝。想了解更多這款神奇功能的使用方法嗎?點(diǎn)擊查看!
3. 四款值得推薦的AI以圖生圖軟件,有需要的趕緊來(lái)試試!
近年來(lái),人工智能逐漸走入公眾視野,其中的AI圖像生成技術(shù)尤為引人注目。只需在特定軟件中輸入關(guān)鍵詞描述語(yǔ)以及上傳參考圖就能智能高效生成符合要求的...
4. AI視頻制作神器Viggle:讓靜態(tài)人物動(dòng)起來(lái),創(chuàng)意無(wú)限!
Viggle AI是一款免費(fèi)制作視頻的AI工具,能讓靜態(tài)人物圖片動(dòng)起來(lái),快來(lái)了解Viggle AI的功能和優(yōu)勢(shì)吧!
5. Logo Diffusion——基于sd繪畫(huà)模型的AI LOGO 生成器
這下LOGO設(shè)計(jì)徹底不用求人了。接下來(lái)詳細(xì)演示一遍操作流程首先進(jìn)入Logo D... 想學(xué)習(xí)更多AI技能,比如說(shuō)關(guān)于怎么樣利用AI來(lái)提高生產(chǎn)效率、還能做什么AI...
6. 零基礎(chǔ)10分鐘生成漫畫(huà),教大家如何用AI生成自己的漫畫(huà)
接下來(lái),我將親自引導(dǎo)你,使用AI工具,創(chuàng)作一本既有趣又能帶來(lái)盈利的漫畫(huà)。我們將一起探索如何利用這個(gè)工具,發(fā)揮你的創(chuàng)意,制作出令人驚嘆的漫畫(huà)作品。讓...
7. 趕緊收藏好!這4個(gè)完全免費(fèi)的AI視頻制作網(wǎng)站和工具
以下是一些免費(fèi)的AI視頻制作網(wǎng)站或工具,幫助您制作各種類型的視頻。 1. Lumen5:Lumen5是一個(gè)基于AI的視頻制作工具,可將文本轉(zhuǎn)換為視頻。 用戶可以使...
8. AI顯卡繪畫(huà)排行榜:4090無(wú)懸念,最具性價(jià)比出人意料
在AI繪圖領(lǐng)域,Stable Diffusion的顯卡繪圖性能備受關(guān)注。本文整理了Stable Diffusion顯卡的硬件要求和性能表現(xiàn),以及2023年3月顯卡AI繪圖效率排行榜和性價(jià)比排行榜。歡迎查看最新的AI顯卡算力排行榜。
9. 一款免費(fèi)無(wú)限制的AI視頻生成工具火了!國(guó)內(nèi)無(wú)障礙訪問(wèn)!附教程
人人都可以動(dòng)手制作AI視頻! 打開(kāi)網(wǎng)址https://pixverse.ai/,用郵箱注冊(cè)后,點(diǎn)擊右上角Create,就可以開(kāi)始創(chuàng)作了。 PixVerse目前有文案生成視頻,和圖片生...
就能快速生成一幅極具藝術(shù)效果的作品,讓現(xiàn)實(shí)中不懂繪畫(huà)的人也能參與其中創(chuàng)作!真的超贊噠~趣趣分享幾款超厲害的AI繪畫(huà)軟件,提供詳細(xì)操作!有需要的快來(lái)...
最新文章
同學(xué)您好!