猜猜以下三張截圖,有哪些地方使用到切圖的resource?
以上的截圖取自cm security答案是框起來的地方有使用到切圖,而其餘的元件,都是由研發實現的,包含你看到的那些小icon。
事實上這些icon,都是字元,只要在apk裡嵌入自己建立的iconfont ttf檔,它所佔的容量大小,會比全部icon都使用切圖還要少95%。
也因為它是以字元的形態顯示,具有向量的特性,和以下的優勢:
放大、縮小都不會失真,只要按照定義文字的方式去標示規格即可。它可以下陰影的參數,也可以上漸層顏色,設計師能發揮的空間並不少。提高更換元件(換圖)的工作效率:倘若app裡各個不同畫面有用到一樣的icon,日後你對某個icon的設計不滿意,或是想改變隱喻圖示,也只要更新該字元,以及ttf檔,就可以一次替換所有場景的icon,而不需要重新切圖。
怎麼做?! 其實很簡單,只需要以下幾個步驟:
1.先把你的icon畫在24*24px canvas size的檔案,並輸出成svg格式,顏色不指定,但一般我會用黑色的,進階參數可以設定向量圖案的精度。
2.打開icomoon.io網頁,建立一個新的project(它同時也可以管理多個project),點進綠色手指指向的地方。
3.接著把你設計好的icon svg import。
4.完成置入所需要的svg後,在generate font,按下download,就可以下載完整的ttf檔(裡頭還包含了json,方便多人協同編輯與版本管理)。
5.每一個icon都會有專屬的unicode,要使用的時候,設計師要先請研發定義相應的iconfont id,就能方便大家識別與維護。
6.標注的時候,只要定義字級就可以決定顯示的大小,唯一要注意的是,在設計原檔裡,每個icon元件,都要保留一個透明背景的canvas,以便測量尺寸,最重要的是單位要設定成dp,而不要使用sp,之後我會再分享一篇文章《如何設計一套標注與切圖,滿足90%以上機種適配》,其中會談到有關於measurement dp, sp, px和百分比該如何視情況使用。
相信你已經了解iconfont的使用方法,如果有更好的實作方式,也歡迎交流分享。
備註一下:這不是一篇技術分享文而已,而是精實創業的產品開發其中一個方法,我在公司開發的app上已經實際應用一年了,用iconfont的作法,來取代icon切圖的話,將可以把原本100kb的佔用容量節省至5kb。