android支持的圖片格式
⑴ 什麼是9png圖片 原理是什麼,9png工具又如何使用
9png圖片它是Android系統特有的一種圖片格式,文件擴展名為.9.PNG。
9png的原理:其實相當於把一張png圖分成了9個部分(九宮格),分別為4個角,4條邊,以及一個中間區域,4個角是不做拉升的,所以還能一直保持圓角的清晰狀態,而2條水平邊和垂直邊分別只做水平和垂直拉伸,所以不會出現邊緣。
如何操作:滑鼠左鍵選取需要拉伸的像素點;shift+滑鼠左鍵取消當前像素點。
從圖中可以看出,導入的png圖片默認周圍多了一像素點,也就是這一圈一像素點就是可操作區域。因為下方和右方可操作區域是指定內容的顯示區域,屬於可選區域,可不予理會;但是要注意內容區域的標記不能有間斷,否則.9.png圖片在放入項目下會報錯。
注意上方和左邊的黑色像素,是想讓此png圖像拉伸操作的時候,只是中間區域被拉伸。選擇上方中間區域是為了橫向拉伸的時候選取的拉伸像素點,左邊則是縱向拉伸像素點。
在Android的設計過程中,為了適配不同的手機解析度,圖片大多需要拉伸或者壓縮,這樣就出現了可以任意調整大小的一種圖片格式「.9.png」。
這種圖片是用於Android開發的一種特殊的圖片格式,它的好處在於可以用簡單的方式把一張圖片中哪些區域可以拉伸,哪些區域不可以拉伸設定好,同時可以把顯示內容區域的位置標示清楚。
⑵ android裡面的圖片資源怎麼都是png的
因為png格式的文件支持透明度,android中可以存在四種png後綴的image文件
1.標准PNG: (ex.應用默認的icon.png)
符合PNG-8標準的PNG圖片, 只能做圖片, 不能放縮.
2.Android打包處理後的9.png: (ex.應用APK中打包的9.PNG)
為了保證佔用空間小,android在資源中刪除了標准PNG的大量冗餘信息,去除了周邊的空白像素,減少了IDAT數據段,
在打包成APK的時候,裡面的文件就是不可放縮的9.png, 雖然後綴名還是9.png,但是已經沒有放縮功能,並且把邊界多的兩個像素也去除了.
3.Android不可放縮的9.png:
在drawable中可以找到9.png圖片,但是使用Draw 9-patch軟體打開會報錯,但是可以在drawable中使用,
這些文件只是刪除了冗餘信息,並且加上了邊界的兩個像素點,
並沒有添加可放縮的flag到文件中,這些文件只能作為打包後的9.PNG使用(但是size會小一些),不能放縮和做背景.
4.Android可放縮的9.png:
可以使用Draw 9-patch軟體打開,不會報錯,在drawable中使用,android會根據設置的黑色像素點來進行放縮.
有添加可縮放的flag到文件中,可以做為View的背景或者普通的圖片顯示.在做背景時,可以進行拉伸和放縮.
在做非背景時,比如像ImageView這類設置src圖片則不隨view變化,按其自身大小顯示部分或全部.
另: 對9.png後綴文件的解析邏輯及可放縮chunk檢查的邏輯 Images.cpp
對9.PNG判斷函數入口: Drawable.java中對」nine-patch」欄位的判斷
⑶ 安卓手機怎麼打開BMP圖片
普通安卓手機支持的圖片文件格式為:PNG、JEPG和GIF圖片格式文件。部分安卓手機支持全部。
想要打開只能通過第三方軟體打開。
可以考慮下載看圖軟體:
ES文件瀏覽器、360文件瀏覽器等都可以打開的。
⑷ 動態WebP圖片格式簡介
最近接到一個Android端支持apng和webp動圖播放的需求,所以對apng、webp圖片格式進行了詳細的學習,今天在這里針對webp格式的圖片進行一下簡介。
WebP是Google於2010年提出的一種新的圖片壓縮格式。它為網路圖片提供了無損和有損壓縮能力,同時在有損條件下支持透明通道。根據Google較早的測試,WebP的無損壓縮比網路上找到的 PNG 檔少了45%的文件大小,即使這些PNG檔在使用 pngcrush 和 PNGOUT 處理過,WebP還是可以減少28%的文件大小。
同時,谷歌於2014年提出了動態WebP,拓展WebP使其支持動圖能力。動態WebP相比GIF支持更豐富的色彩,並且也佔用更小空間,更適應移動網路的動圖播放。
下面進入我們的主題,動態webp,這里我會對其文件格式用於解析播放的部分做一下講解。
webp的播放原理類似於gif和apng,都是逐幀播放,記錄每一幀變化區域的長寬、坐標、播放延時,來還原播放
首先我們來看一個示例:
上面就是一個動態webp該有的文件格式,下面我們來分析一下。
首部 :webp首部包含12位元組,分別為RIFF、File Size以及WEBP,其中File Size為文件大小,WEBP為文件標示,我們可以根據WEBP來判斷其文件格式
擴展格式 :擴展格式包括:VP8X用於指明使用的特性、可選的『ICCP』用於色彩配置、可選的『ANIM』用於動畫控制、可選的『EXIF』用於EXIF元數據、可選的『XMP』用於XMP元數據。對於靜態webp圖片,其只包含1幀的數據,而動態webp包含多幀。
l:當圖像包含透明數據時置位。
a:動態WebP置位,此時ANIM和ANMF數據塊中的數據將會被使用來控制動畫。
Canvas Width Minus One:畫布的真實寬度是該數值+1。
Canvas Height Minus One:畫布的真實高度是該數值+1。
可以看出,我們可以通過此數據塊拿到透明度、animation動畫標記以及畫布的寬高。
動畫 :動畫我們主要關注ANIM和ANMF塊。
其中ANIM Chunk定義了動畫的全局參數,包括backgroundColor以及loopCount。
而對於ANMF Chunk,其包含了一幀的圖像數據,一個動畫裡面會包含多個ANMF Chunk。它內部定義了:
Frame X: 該幀數據左上角X坐標為該值 * 2。
Frame Y: 該幀數據左上角Y坐標為該值 * 2。
Frame Duration: 播放該幀後的延時時間。
Blending method (B): 標識如何混用前面畫布的相應透明像素點。置0時,需要清空前一幀。置1時,不清空,直接渲染這一幀數據。
Disposal method (D): 標識該幀數據在被顯示後如何處理畫布。置0時不處理;置1時將畫布矩形區域轉換成ANIM定義的背景顏色。
Frame Data:以2位元組為單位,包含圖像比特流數據以及可選的透明度數據。
作為一種新興的圖片格式,webp在壓縮演算法上進行了優化,同時有著不錯的顯示效果。對於動圖,它的體積比gif小,但是顯示效果比gif強,但是支持廣泛度上不如gif。
https://zhuanlan.hu.com/p/23648251
https://zh.wikipedia.org/wiki/WebP
⑸ 圖片格式詳解
在日常工作中,我們經常接觸到很多種圖片格式,最常接觸到的就是 JPG、BMP、PNG、GIF、 TIF 了,此外還有 PSD、AI、TIF、EPS、RAW 等,不同的圖片格式有不同的特性,佔用的數據空間也不同,有些格式圖片還需要特殊的軟體才能打開,相信大家都遇到過,所以就在這里講講他們的區別吧!
圖片格式可大致范分為:點陣圖、矢量圖(可無損縮放)、 HDR 高動態范圍圖(附帶光照信息的圖像)、平面軟體源文件等等。按照存儲的格式分為:有損壓縮、無損壓縮兩種。
JPG(又稱JPEG)是一種針對相片圖像而廣泛使用的一種有損壓縮標准方法。使用JPEG格式壓縮的圖片文件一般也被稱為JPEG Files,最普遍被使用的 擴展名 格式為.jpg,其他常用的 擴展名
還包括.jpeg、.jpe、.jfif以及.jif。JPEG格式的數據也能被嵌進其他類型的文件格式中,像是 TIFF 類型的文件格式
JPEG圖像格式是最常見也最常用的。它能夠將圖像壓縮在很小的儲存空間,但是會丟失一些圖像數據,尤其是在壓縮比例越高的情況下圖像質量更低。但是JPEG的壓縮技術也同時是它的應用優勢。它用有損壓縮方式去除冗餘的圖像數據,在獲得極高的壓縮率的同時能展現十分豐富生動的圖像,換句話說,就是可以用最少的磁碟空間得到較好的圖像品質。同時 JPEG是一種很靈活的格式,具有調節圖像質量的功能,允許用不同的壓縮比例對文件進行壓縮,支持多種壓縮級別,應用環境會更多,也更加方便。
PNG是一種無損壓縮的圖像存儲格式,其設計目的是試圖替代GIF和TIFF文件格式,同時增加一些GIF文件格式所不具備的特性。由於它使用的是無損壓縮演算法進行壓縮,所以相同像素寬高的圖像保存為PNG在文件大小上比JPEG往往要大的多,一般是JPEG大小的幾倍左右。由於無損壓縮不會丟失圖像數據,並且支持alpha通道而且完整的保存了圖像數據且無鋸齒,所以一般應用在PS素材或圖標上,這就為什麼不管Android和iOS圖標都是使用的png格式。
BMP(Bitmap)是微軟Windows操作系統中的標准圖像文件格式,可以分成兩類:設備相關點陣圖(DDB)和設備無關點陣圖(DIB),使用非常廣。它採用位映射存儲格式,通常是不壓縮的,除了圖像深度可選以外,不採用其他任何壓縮,因此,BMP文件所佔用的空間很大。BMP文件的圖像深度可選lbit、4bit、8bit及24bit。BMP文件存儲數據時,圖像的掃描方式是按從左到右、從下到上的順序。由於BMP文件格式是Windows環境中交換與圖有關的數據的一種標准,因此在Windows環境中運行的圖形圖像軟體都支持BMP圖像格式。
GIF(Graphics Interchange Format)的原義是「圖像互換格式」,是CompuServe公司在 1987 年開發的圖像文件格式,因其體積小、成像相對清晰,特別適合於初期慢速的互聯網,而大受歡迎。GIF文件的數據,是一種基於LZW演算法的連續色調的無損壓縮格式。其壓縮率一般在50%左右,它不屬於任何應用程序。GIF格式可以存多幅彩色圖像,如果把存於一個文件中的多幅圖像數據逐幅讀出並顯示到屏幕上,就可構成一種最簡單的動畫,大家平時看到網站中的動態圖片與表情包就是這個格式。
PSD(Photoshop Document)是著名的Adobe公司的圖像處理軟體Photoshop的專用格式,這種格式可以存儲Photoshop中所有的圖層,通道、參考線、註解和顏色模式等信息,是一種非壓縮的原始文件保存格式。PSD文件可以保留所有的原始操作信息,所以佔用空間會很大,但是對於後期修改、繼續操作更有保存意義。PSD文件其實就是Photoshop的源文件,目前其他軟體也可以逐漸的支持原生的 PSD,但是一些特效等會合並成一個獨立的像素層,如果你在製作需要反復推敲修改的圖像時,選保存為PSD格式是非常有必要的。
EPS(Encapsulated Post Script)是是目前桌面印刷系統普遍使用的通用交換格式當中的一種綜合格式。它是由一個PostScript語言的文本文件和一個(可選)低解析度的由PICT或TIFF格式描述的代表像組成,例如多色調曲線、Alpha通道、分色、剪輯路徑、掛網信息和色調曲線等,因此EPS 格式常用於印刷或列印輸出。EPS是我們處理圖像工作中的最重要的格式,它在Mac和PC環境下的圖形和版面設計中廣泛使用。
PDF(Portable Document Format)攜帶型文檔格式,是由Adobe Systems用於與應用程序、操作系統、硬體無關的方式進行文件交換所發展出的文件格式。PDF文件以PostScript語言圖象模型為基礎,無論在哪種列印機上都可保證精確的顏色和准確的列印效果,即PDF會忠實地再現原稿的每一個字元、顏色以及圖象。PDF文件使用了工業標準的壓縮演算法,通常比PostScript文件小,易於傳輸與儲存。它還是頁獨立的,一個PDF文件包含一個或多個「頁」,可以單獨處理各頁,特別適合多處理器系統的工作。此外,一個PDF文件還包含文件中所使用的PDF格式版本,以及文件中一些重要結構的定位信息。正是由於 PDF文件的種種優點,它逐漸成為出版業中的新寵。
Adobe公司設計PDF文件格式的目的是為了支持跨平台上的,多媒體集成的信息出版和發布,尤其是提供對網路信息發布的支持。為了達到此目的, PDF具有許多其他電子文檔格式無法相比的優點。PDF文件格式可以將文字、字型、格式、顏色及獨立於設備和解析度的圖形圖像等封裝在一個文件中。該格式文件還可以包含超文本鏈接、聲音和動態影像等電子信息,支持特長文件,集成度和安全可靠性都較高。
TIFF(Tagged Image File Format)是一種非失真的壓縮格式(最高也只能做到2~3倍的壓縮比)能保持原有圖像的顏色及層次,但佔用空間卻很大。例如一個200萬像素的圖像,差不多要佔用6MB的存儲容量,故TIFF常被應用於較專業的用途,如書籍出版、海報等,極少應用於互聯網上。TIFF是一種靈活的點陣圖格式,主要用來存儲包括照片和藝術圖在內的圖像。通過在文件頭中包含「標簽」它能夠在一個文件中處理多幅圖像和數據。標簽能夠標明圖像的如圖像大小這樣的基本幾何尺寸或者定義圖像數據是如何排列的並且是否使用了各種各樣的圖像壓縮選項。
HDR(High-Dynamic Range),相比普通的圖像,可以提供更多的動態范圍和圖像細節,根據不同的曝光時間的LDR(Low-Dynamic Range)圖像,利用每個曝光時間相對應最佳細節的LDR圖像來合成最終HDR圖像,能夠更好的反映出真實環境中的視覺效果。現實真正存在的亮度差,即最亮的物體亮度,和最暗的物體亮度之比為10的8次方, 而人類的眼睛所能看到的范圍是10的5次方左右,但是一般的顯示器,照相機能表示的只有256種不同的亮度。通俗點來講就是計算機現實器攝影機目前無法達到我們肉眼所能感知的色彩范圍,所以 hdr 的圖片格式就會附帶光照強度信息,它比其它格式的圖像有著更大亮度的數據貯存,而且它記錄亮度的方式與傳統的圖片不同,不是用非線性的方式將亮度信息壓縮到8bit或16bit的顏色空間內,而是用直接對應的方式記錄亮度信息,它可以說記錄了圖片環境中的照明信息,因此我們可以使用這種圖象來「照亮」場景。有很多HDRI文件是以全景圖的形式提供的,我們也可以用它做環境背景來產生反射與折射。這里強調一下HDRI與全景圖有本質的區別,全景圖指的是包含了360度范圍場景的普通圖象,可以是JPG格式,BMP格式,TGA格式等等,屬於Low-Dynamic RangeRadiance Image,它並不帶有光照信息。
RAW(RAW Image Format)是「未經加工」的圖像。可以理解為:RAW圖像就是CMOS或者CCD圖像感應器將捕捉到的光源信號轉化為數字信號的原始數據,RAW格式圖片細節更嚴密,更方便調整。RAW文件大多是通過相機直接輸出的,記錄了數碼相機感測器的原始信息,同時記錄了由相機拍攝所產生的一些元數據(如ISO的設置、快門速度、光圈值、白平衡等)的文件,因此RAW也是未經處理、也未經壓縮的格式,可以把RAW概念化為「原始圖像編碼數據」或更形象的稱為「數字底片」。
通常帶有 HDR 高動態范圍的光照信息,這在後期編輯圖片的時候可以更好的控制曝光、白平衡、色彩飽和度等等。所以,為了更加方便查閱和後期處理照片,攝影師通常採用同時記錄JPEG和RAW格式照片的辦法,既可以讓用戶使用常規的圖像處理軟體組織和編輯照片(JPEG);當需要獲得處理精細的照片或需要改善照片缺憾(如白平衡不正確和高光/暗部細節缺失 )的時候, 用戶可以使用RAW解決問題。
對於大多數用戶而言,我們最常用的應該是RAW、PSD和JPEG格式。如果你在進行照片拍攝時就採用RAW+JPEG格式,一張照片的佔用空間大概是35MB,同一場景多拍幾張就達到100MB了。加上現在很多人都有隨走隨拍的習慣,稍不注意就要拍幾個GB空間的照片,那就建議大家准備至少32GB的存儲卡進行拍攝,同時購買TB級的機械硬碟/移動硬碟進行備份保存。
如果在工作中需要使用EPS、TIF、BMP甚至更多其他圖片格式時,充分說明你的工作專業度很高,圖片數據的重要性也更大,數據保存就更是重中之重的事情了。這時候,你可能需要將一張照片保存為多個備用的圖片格式,佔用空間就會更大。加上本身素材數據量就不小,那就建議大家選購多款硬碟進行多地備份;也可以選擇搭建NAS數據中心,實現數據同步、共享以及遠程操作。
⑹ 安卓系統是不是不支持gif格式圖片
android
本身是不支持gif的。原因的話得去問谷歌了,不過Android可以讀取出gif的參數,再一幀一幀顯示出來。也可以找寫好的一些框架,如:glide。
⑺ Android開發中可以使用JPG或其他格式圖片嗎,有什麼區別嗎
可以使用jpg
android支持jpg,gif,png,bmp, 4.0以上的還支持webp
區別不大
⑻ 為Android應用添加背景應該使用什麼樣的圖片格式,每個格式的的優勢在哪
原創回答:《轉載前請註明 from 網路知道-smile烏龜的回答》
先說結論;
1. 大的ViewGroup(Rl,FL ,LL,Cl等)布局背景應該設PNG
2. 小的view(Button,Recyclerview子item)的背景應該用WebP格式
3. 類似16*16的表情圖 也應該用WebP,也可考慮PNG
在研究圖片之前,首先搞明白三個問題:
像素點:計算機學科中,圖片由一個一個像素點組成,像素點有兩種ARGB和RGB,A,讀作「alpha」,中文「透明度」的含義。
圖片格式:JPEG 有損壓縮
優點 :壓縮過程中損失像素少(為什麼要壓縮?後文會說)
缺點:有損耗壓縮會使原始圖片數據質量下降(像素點變少了)
PNG無損壓縮
優點:更優化的網路傳輸顯示
(PNG圖像在瀏覽器上採用流式瀏覽,即使經過交錯處理的圖像會在完全下載之前提供瀏覽者一個基本的圖像內容,然後再逐漸清晰起來。它允許連續讀出和寫入圖像數據,這個特性很適合於在通信過程中顯示和生成圖像)
支持透明效果
體積小適合網路傳輸,請求服務端的圖片,節省流量
WebP 谷歌(google)開發的一種旨在加快圖片載入速度的圖片格式
優點:「在質量相同的情況下,WebP格式圖像的體積要比JPEG格式圖像小40%」
「WebP
的優勢體現在它具有更優的圖像數據壓縮演算法,能帶來更小的圖片體積,而且擁有肉眼識別無差異的圖像質量;同時具備了無損和有損的壓縮模式、Alpha
透明以及動畫的特性,在向JPEG 和 PNG 上的轉化效果都非常優秀、穩定和統一」
WebP應用比較優秀的:騰訊旗下 QQ空間客戶端,QQ客戶端,微信客戶端等
WebP圖片常用轉換工具:智圖,iSparta等
圖片壓縮:
以Android 為例,任何展示圖片的View控制項,載入圖片的時候,都需要為圖片申請內存,通常圖片越大,申請的內存越大,Android系統限制了每個App的運行內存,一般為32MB-200M左右,為了優化App性能,必須對圖片進行壓縮:壓縮圖片尺寸
通過壓縮圖片尺寸,解決App運行時申請過多內存,被系統殺死的情況。
總結: JPEG是有損壓縮,PNG是無損壓縮,
當UI切了一張匹配實際手機屏幕大小的圖片時 可以使用JPEG(不需要壓縮圖片)
當UI給的圖片過大,需要程序員手動壓縮時,考慮PNG
當UI給的圖片過於離譜,不可理喻,導致APK包過大,用戶反映耗費流量過多時,考慮使用WebP,而且WebP同PNG,JPEG是可以互轉的
(PS:請求自服務端的圖片資源,其實也是UI給的)
參考和補充:
圖片格式,JPEG PNG WebP from網路
http://isux.tencent.com/introction-of-webp.html
http://www.cnblogs.com/xiangism/p/5311314.html
WebP圖片常用轉換工具:智圖,iSparta 等
官方WebP解析庫https://github.com/alexey-pelykh/webp-android-backport
⑼ Android對圖片格式有什麼建議么,PNG還是JPEG
這個時代。可以把PNG當作GIF的替代來用。
PNG各方面的功能和性能都可以完美替代GIF。在WEB上不流行是因為IE6對於PNG的透明兼容性很差。
但是在手機應用,GIF已經可以進入墳墓了。
小尺寸,色彩數少,或者需要用到透明的時候,使用PNG。
大尺寸,色彩漸變色多的用JPG。
⑽ Android怎麼解析帶圖片的xml數據
前言的前言:因為內容較多,此系列將分多篇文章記載。
1、關於圖片格式
android使用的圖片格式有3種:png、jpg、gif。
官方推薦使用png格式的圖片。
jpg格式的圖片是不被推薦使用的。
gif格式的圖片是建議不使用的。
2、圖片資源調用
1、通過resource ID進行Bitmap資源的調用,例如getDrawable(int)、android:drawable或者android:icon等,一般bitmap資源文件放在res/drawable-XXXX文件夾下,這也是推薦的存放位置,因為放在此文件夾下的圖片資源android aapt工具會自動優化圖片資源文件,例如將24-bit點陣圖或者32-bit點陣圖降色到8-bit點陣圖,以節省內存,同時也不會失真。
2、如果你不希望對圖片進行優化處理,可以將圖片