標籤:android style blog http color ar os 使用 sp
什麼是.9圖片
至於什麼是.9圖片這裡就簡單提一下,即圖片尾碼名前有.9的圖片,如pic.9.png、pic1.9.jgp,諸如此類的圖片就稱為.9圖片。
.9圖片的作用
①.9圖片的作用是在圖片展開的時候特定的地區不會發生圖片失真,至於哪些部分不會失真那麼得看你的圖片是如何繪製的。
②當一張圖片作為背景時可以指定前景內容的顯示地區。
其中灰色是背景、綠色是前景。那麼前景放在背景的具體位置是可以通過.9圖片進行規定的。
如何繪製.9圖片①利用android開發環境中提供的工具draw9patch。
draw9patch :
【draw9patch.bat其他功能說明】
Show lock:顯示不可繪地區
Show patches:預覽這個繪圖區中的可延伸宮格(粉紅色代表一個可延伸地區)
Show patches:預覽視圖中的高亮地區(紫色地區) 一些事
Show bad patches:在宮格地區四周增加一個紅色邊界,這可能會在映像被延伸時產生人工痕迹。如果你消除所有的壞宮格,延伸視圖的視覺一致性將得到維護。
在“原始映像顯示繪製地區”(這個名稱自己取的)其實顯示的是一張原始圖片,並且在原始圖片的四周添加了一個像素,通俗點說就是圖片比原始圖片擴大了一圈,多出來的那一圈是透明像素。我們需要繪製的地方真是在那一圈透明像素上進行繪製。在繪製之前先講講那一圈透明像素的含義。
四周分別命名為L、T、R、B。
繪製在L的地區:用於展開的縱向地區。
繪製在T的地區:用於展開的橫向地區。
繪製在R的地區:用於顯示前景的縱向範圍。
繪製在B的地區:用於顯示前景的橫向範圍。
舉例說明一下, :
這個圖會如何展開、如何顯示前景呢?最簡單的方法是直接看“展開預覽區”,當然更快捷是方法是你能直接看出這個地區。
展開地區
紅色框地區:表示縱向展開的地區,也就是說,當圖片需要縱向展開的時候它會只指定展開紅色地區,其他地區在縱向是不會展開的。
綠色框地區:表示橫向展開的地區,也就是說,當圖片需要橫向展開的時候它會只指定展開綠色地區,其他地區在橫向是不會展開的。
顯然紅色和綠色相交的部分是既會進行橫向展開也會進行縱向展開的。
前景的顯示地區
藍色地區:表示前景能顯示的縱向範圍。即前景的最上面可以顯示到什麼地方,最下面可以顯示的什麼地方。
黃色地區:表示前景能顯示的橫向範圍。即前景的最左邊可以顯示到什麼地方,最右邊可以顯示的什麼地方。
藍色和黃色相交部分:表示整個前景能顯示的地區。一個地區是矩形的,藍色規定了上下邊界,黃色規定了左右邊界,兩者共同當然也就規定了一個矩形地區。
②利用photoshop進行繪製。如何繪製?
A、首先將畫布四周放大一個像素。
B、然後在四周繪製黑色像素(四周像素的意義參見①)。
C、儲存的時候改成.9圖片的尾碼名。
何時使用ps繪製?
A、圖片很大的時候用draw9patch不是很好繪製,這個時候你就可以利用ps進行繪製。
B、當你要做很多表徵圖的時候,你可以利用ps中的動作功能來批量完成。
小結:如果你熟悉ps的話某種程度上可以做到事半功倍。而且可以做一些模板,或者是錄製一些動作。
何時需要使用.9圖片
簡單點講,一張圖片被展開以後會發生嚴重的映像失真時,那麼就可以考慮.9圖片。那麼哪些時候這種圖片格式是比較有效呢?
①圖片有圓角並且其他某一地區可以展開而不影響圖片效果。
②一些表徵圖需要適配不同的解析度的裝置。
當然具體的使用還得看具體的要求,這裡只是說了一下我最常用的,不常用的就沒有列舉了。
PS:.9圖片很多時候你知道怎麼使用就可以了,至於為什麼會產生展開,類似這樣的問題你最好去問問google。
有兩點需要特別注意下:
1.最外圍的一圈像素必須要麼是純黑色,要麼是透明,一點點的半透明的像素都不可以有,比如說99%的黑色或者是1%的投影都不可以有;
2.檔案的尾碼名必須是.9.png,不能是.png或者是.9.png.png,這樣的命名都會導致編譯失敗。
Android.9圖片講解(一)