
什么是點(diǎn)9圖?
.9圖也就是.9.png;其實(shí)就是png圖片
這是安卓開發(fā)里面的一種特殊的圖片
早期的設(shè)計(jì)風(fēng)格都比較寫實(shí),
在處理一些按鈕或可拉伸圖標(biāo)以及氣泡對(duì)話框和主題設(shè)計(jì)的時(shí)候png圖片在拉伸后邊角就會(huì)出現(xiàn)失真模糊的情況;
安卓開發(fā)中便出現(xiàn)了.9圖這種處理方式;
我們可以知道.9.png其實(shí)就是png圖片處理的啦;
和png不同的區(qū)別在于.9可以拉伸
那么做完png如何去切呢
有兩種方式
1、將png圖片標(biāo)注好給到開發(fā)讓開發(fā)用Android Studio自帶的制作工具去切
如何標(biāo)注呢?

舉個(gè)例子
拿聊天氣泡的切圖來舉例
png設(shè)計(jì)尺寸要留出足夠的拉伸區(qū)域;
橫向和縱向拉伸區(qū)域要留出至少1px(但是盡量要大一些好設(shè)置區(qū)域)
特別注意縱向拉伸那個(gè)不要放置在右邊突出箭頭上了不然箭頭也會(huì)拉伸;
橫向和縱向顯示區(qū)域是根據(jù)設(shè)計(jì)中字體上下左右留白得出來的;
按照右圖切圖方式里標(biāo)注出拉伸和顯示的位置及尺寸就好~
2、我們?cè)O(shè)計(jì)師自己切圖完了再給到開發(fā)
如何切呢?
Google的一位設(shè)計(jì)師Roman Nurik
開發(fā)了一個(gè)切.9圖的小工具...

上圖中
左面版是選擇png圖片資源;選擇資源大小(和導(dǎo)出資源一致);命名;

中間面板是設(shè)置拉伸區(qū)域;內(nèi)容顯示區(qū)域;切圖留白區(qū)域;

右邊面板是預(yù)覽效果面板和下載按鈕;

完成后下載就ok~
iOS中如何處理這種要求的圖片?
iOS在處理這種類型的圖片要比安卓方便的多;
iOS自身一句代碼就可以實(shí)現(xiàn)可拉伸處理

這個(gè)是 UIImage 的類方法,作用是能創(chuàng)建一個(gè)內(nèi)容區(qū)域可拉伸,而邊角區(qū)域不拉伸的圖片
這里面有兩個(gè)參數(shù)需要給到開發(fā):
第一個(gè) leftCapWidth 是指左側(cè)不拉伸的寬度;
第二個(gè) topCapHeight 是指頂部不拉伸的高度;

*它的拉伸原理就是第n+1個(gè)像素拉伸
如圖,
如果我們?cè)O(shè)置為左側(cè)不拉伸寬度為8px,那么它就是第9個(gè)像素復(fù)制向右拉伸;
如果我們?cè)O(shè)置為頂部不拉伸高度為10px,那么它就是第11個(gè)像素復(fù)制向下拉伸;
所以,
我們只需要告知開發(fā)左側(cè)和頂部的不拉伸距離就ok~