androidjpgpng
⑴ 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」欄位的判斷
⑵ android上開機動畫能是.jpg嗎
①開機動畫圖片既可以是jpg文件,也可以是png文件,只是一定要按順序命名。文件名命名的國際慣例是五位數,即:00000、00001、 00002……也可以是文件夾名稱+下劃線+序數,即:part0_00000、part0_00001、part0_00002……
②鈴聲文件既可以是ogg文件,也可以是mp3文件,直接復制到system/media文件夾里。寫法如下:
s 文件名
③具體用jpg還是png,以文件大小來選擇,比如動畫截圖用jpg就要比png體積小很多。
④開機動畫既可以是橫屏也可以是豎屏。製作橫屏開機動畫請把圖片批量旋轉90度或270度。
⑤圖片體積越小,播放起來越流暢,一般單張圖片體積在20KB以內播放起來就比較流暢了。
⑥圖片超過一定數目以後就不能使用循環播放或多次播放功能了,只能讓其播放一次,否則播放幾秒後就會黑屏。
⑦生成壓縮包時請一定設置為僅存儲而不是其它壓縮模式,否則一定黑屏。
⑧在電腦上編輯desc.txt文件時請用第三方編輯器,比如Emeditor或是Notepad++等,否則生成的動畫會有問題,也就是直接黑屏。
⑨批量命名推薦用拖把更名器,將視頻文件轉換成jpg或png文件推薦用Video to Picture,優化jpg和png圖片大小推薦用Optimizer。
⑩做好主題後推薦用ROM Toolbox(固件工具箱)先預覽一遍,該軟體的預覽效果和實際開機動畫效果是完全一樣的,如果發現問題可以立刻改正。
⑶ android開發中讀取遠程伺服器端的.png圖片讀取不到.jpg沒有問題
可以試試把png轉成jpg,圖片路徑和名稱都不要改。如果可以那就是伺服器問題
⑷ android png還是jpg
android開發過程中,有各種各樣的圖片,不同的圖片有不同的大小、用途,有的是作為背景圖片,有的是作為一個小的圖標,不同用途、不同場景的圖片使用格式最好按照不同格式的優缺點來確定。
1、首先來說,同樣解析度的圖片,png的要比jpg的大好多, 做android對圖片的大小很敏感,所以第一感覺是用jpg,不用png。之所以png比jpg大是因為,png是無損壓縮的,而jpg是有損壓縮,但是在比如說一張背景圖,由於手機會對png的圖片進行硬體加速,所以同一張圖片的png格式和jpg格式,png的載入速度是比jpg快的,但是如果對包大小的訴求大於對載入速度訴求的話,jpg又比png有優勢。
2、但是有的情況下jpg是比png好的,jpg相對於png的優勢是小!小!小,因此一些需要動態網路獲取載入的圖片,比如說Splash頁面,就要使用jpg格式的圖片了。
3、小的圖標,由於對其清晰度要求高,並且小圖標也不是很大,因此最好用png格式的。
2020.12.10更新
讓png和jpg都去死吧,用webp
以上僅作為個人的觀點,如若有誤,請指正!
⑸ Android 頁面中png jpg gif webp svg的區別和使用
JPG能顯示的顏色比gif和png要多的多;同時能得到很好的壓縮;但是是一種失真壓縮(壓縮比;解析度;可感知失真);jpg適合應用在那些允許輕微失真的像素色彩豐富的場景;不適合做簡單色彩的圖片(icon,小logo)。
支持動畫;也是一種無損的圖片格式(修改圖片後;圖片質量沒有損失);僅支持8位顏色深度;受這個限制;gif不適合應用於各種色彩過於豐富的場景。
Google開發的一種旨在加快圖片載入速度的圖片格式,圖片壓縮體積大約是jpg的2/3;能大量節省伺服器帶寬資源和數據空間;也是一種有損壓縮;目的就是加快網路圖片的傳輸效率;讓圖片更快的顯示在用戶面前;目前所知道的只有高版本的W3C瀏覽器才支持 (chorme39+,safari7+)。
SVG正變得越來越熱門,它不同於以上所有的文件類型,因為它是一個矢量文件格式。這就是說它實際上是由線條和曲線,而不是像素組成的。當你放大一個矢量圖像時,你仍然看到一條曲線或一條線。當你放大一個由像素構成的圖像時,你會看到像素。
對於小logo和圖片來說;svg是很理想的;因為無論是Retina屏還是其他低解析度的屏幕上顯示都是一樣的;svg的logo可以放大不失真;如果是像素構成的圖片格式想要不失真就要多套的圖片,svg是用XML編寫的;可以用js來改變svg圖片的顏色
Svg在渲染的時候需要比像素圖更多的計算能力;更加的消耗性能;所以你的svg圖比較復雜;可能會很耗費性能;甚至文件大小也很大
參考: https://segmentfault.com/a/1190000018258226
⑹ Android 圖片載入(一)高效載入Bitmap 基礎篇
由於Bitmap的特殊性以及Android對單個應用所規定的最大內存限制,我們在同時載入大量Bitmap時很容易發生內存溢出,即我們通常所說的OutOfMemoryError(OOM),因此高效載入Bitmap就成為了每個Android開發者的必備技能。
在學習如何高效地載入Bitmap之前,首先介紹一下如何載入一個Bitmap。我們都知道,Bitmap在Android中通常指的是一張圖片,那麼如何將JPG、PNG等格式的圖片轉換成Bitmap對象呢?BitmapFactory類給我們提供了一些方法:
接下來開始介紹如何高效地載入Bitmap,其實核心思想很簡單: 就是採用BitmapFactory.Options參數來調整圖片尺寸來適配控制項的大小。
假如我們顯示圖片的控制項ImageView寬高為100×100像素,而圖片的尺寸為1024×1024像素,這個時候如果將整個圖片載入進來並顯示到控制項上,自然是很佔用內存資源的。這個時候可以通過BitmapFactory.Options按一定的采樣率載入縮小後的圖片,再將縮小後的圖片顯示到ImageView中,這樣就能減小內存佔用從而在一定程度上避免OOM的發生。
通過BitmapFactory.Options來縮放圖片,主要是使用它的inSampleSize參數,也就是前面提到的采樣率。當采樣率inSampleSize為1時,采樣後的圖片大小為原圖大小;當采樣率inSampleSize>1,比如為2時,采樣後的圖片寬高都為原圖的1/2,即像素降為原圖的1/4,佔用的內存大小也就是原圖的1/4;比較特殊的是,當采樣率inSampleSize<1時,系統會自動將該值當做1來處理。 因此可以得出一個結論:采樣率inSampleSize必須是大於1的整數圖片才會有縮小的效果,並且采樣率同時作用於寬高,也就是說采樣後的圖片會縮小到原圖的1/(inSampleSize^2)。比如inSampleSize=4,那麼縮放比例為1/16。
我們現在知道了,通過采樣率可以提高圖片的載入效率,那麼如何才能計算出最合適的采樣率?我們可以按照如下流程:
接下來以decodeFile方法為例實現圖片的縮放,其他三個方法處理方式類似。
下一篇: Android 圖片載入(二)圖片載入框架Glide 入門篇
《Android開發藝術探索》
⑺ 各大安卓應用市場的上傳截圖的尺寸和解析度是多少,有沒有其他的設計要求
1、小米應用商店:至少3張截圖,規格:720*1280或1080*1920
2、華為應用市場:至少3張截圖,支持JPG、JPEG、PNG格式,推薦480*800或720*1280,單張小於2M
3、OPPO軟體商店:支持JPG、JPEG、PNG格式,單張小於3M
4、魅族應用商店:支持JPG格式,尺寸800*1280、1080*1800、1152*1920、1536*2560,單張小於5M
5、樂視應用商店:支持JPG、PNG格式,不小於720*1280(比例須為9:16),單張小於1M
6、豌豆莢:至少4張截圖,支持JPG、PNG格式,截圖無尺寸限制,不可上傳iOS應用截圖
7、安智市場:至少4-5張截圖,支持JPG、PNG格式,尺寸480*800,單張小於1M
8、錘子應用商店:至少3-5張截圖,支持JPG格式,尺寸1080*1920,單張小於1MB,截圖的主要部分應展示應用的常用功能,頂部通知欄無其他應用圖標,不存在模糊不清、不成比例拉伸的情況
9、搜狗應用商店:至少4-5張截圖,支持JPG、JPEG、PNG格式,不小於480×800,單張小於3M
(7)androidjpgpng擴展閱讀:
蘋果應用市場兩種規格:5.8' : 1125 x 2436 和 5.5' : 1242 x 2208
安卓端基本上兩種: 1080*1920 和 800*480 不超過 1MB。
應用名稱:不超過15個中文字元或30個英文字元 Icon要求:上傳高清logo尺寸512px*512px,png格式,圓角 詳細描述:50到1500字,簡述應用的作用、使用方法等信息。
更新信息:長度不超過400字元,應用截圖:上傳4-5張截圖,JPG或者PNG格式,圖片寬度不能小於320,高度不能小於480,單張圖片不能超過1M。
同時,截圖不能有頂部通知欄。 版權證明:格式為JPG、PNG的文件大小不能超過1MB,如果有多個文件,需要打包為RAR、ZIP格式上傳,文件的大小不能超過10MB。
註:可選填APK特殊說明:最多不超過400字。如修改了包的簽名,須在此填寫修改簽名原因,是否有哪些特殊機型或CPU等要求等。
⑻ android png格式圖片轉換為jpg格式(代碼)
把PNG格式的文件解析成BYTE數組然後再組合成JPG
byte[]
b=null;
File
PNG
=
null;
BufferedOutputStream
stream
=
null;
try
{
PNG
=
new
File(outputFile);
FileOutputStream
fstream
=
new
FileOutputStream(PNG);
stream
=
new
BufferedOutputStream(fstream);
stream.write(b);
}
catch
(Exception
e)
{
//
log.error("helper:get
file
from
byte
process
error!");
e.printStackTrace();
}
finally
{
if
(stream
!=
null)
{
try
{
stream.close();
}
catch
(IOException
e)
{
//
log.error("helper:get
file
from
byte
process
error!");
e.printStackTrace();
}
}
}
Bitmap
bitmap=BitmapFactory.decodeByteArray(b,
0,
b.length);
擦..發現自己弄的是BMP格式..反正就這樣差不多了..
⑼ Android 圖片選擇(ImageSelector) (拍照,裁剪,壓縮,查看)
1.遍歷sdcard文件夾(指定層次深度 searchDeep ),如果文件夾發現圖片 , 添加到已搜索到圖片的文件列表中,並跳入下一個文件夾搜索
2.使用 ContentResolver 搜索 添加搜索標簽(png,jpg,jpeg,gif 等) 優點:更快速
壓縮調用
第一步-->
采樣率壓縮:設置 BitmapFactory.Options.inSampleSize 大小
第二步-->
PNG:尺寸壓縮( Config:ARGB_4444 ,工具: Canvas );
JPG:尺寸壓縮( Config:ARGB_565 ,工具: Canvas )+壓縮質量( bitmap.compress() )
注 :
1.GIF不做壓縮處理
2.尺寸壓縮:改變寬高(png,jpg)
3.壓縮質量:改變文件大小(適用jpg,png無效)