導航:首頁 > 文件處理 > android壓縮圖片上傳

android壓縮圖片上傳

發布時間:2023-05-02 17:47:05

A. android開發,上傳圖片時,怎樣自動壓縮成800x600的尺寸求指教~~

protected Bitmap scaleImg(Bitmap bm, int newWidth, int newHeight) {
// 圖森螞纖片源
// Bitmap bm = BitmapFactory.decodeStream(getResources()
// .openRawResource(id));
// 獲得圖片的寬高
int width = bm.getWidth();
int height = bm.getHeight();
// 設置想要的物賀大小
int newWidth1 = newWidth;
int newHeight1 = newHeight;
// 計算縮放比此仿例
float scaleWidth = ((float) newWidth1) / width;
float scaleHeight = ((float) newHeight1) / height;
// 取得想要縮放的matrix參數
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
// 得到新的圖片
Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix,
true);
return newbm;

}
你可以試下,如果不行,建議你還是先壓縮在上傳。

B. Android壓縮圖片的問題

java">//可能是裁剪方法或存儲方法的原因下面的源碼希望能幫到你
/**
*裁剪圖片方法實現
*
*@paramuri
*/
publicvoidstartPhotoZoom(Uriuri){
Intentintent=newIntent("com.android.camera.action.CROP");
intent.setDataAndType(uri,"image/*");
//設置裁剪
intent.putExtra("crop","true");
//aspectXaspectY是寬高的比例
intent.putExtra("aspectX",1);
intent.putExtra("aspectY",1);
//outputXoutputY是裁剪圖片寬高
intent.putExtra("outputX",180);
intent.putExtra("outputY",180);
intent.putExtra("return-data",true);
startActivityForResult(intent,2);
}
(Stringpath,BitmapmBitmap)throwsIOException{
Filefile=newFile(path);
if(!file.exists()){
file.createNewFile();
}
FileOutputStreamfOut=null;
猛信首try{
坦扮fOut=newFileOutputStream(file);
}catch(FileNotFoundExceptione){
e.printStackTrace();
}
mBitmap.compress(Bitmap.CompressFormat.JPEG,100,fOut);
try{
fOut.flush();
}catch(IOExceptione){
e.printStackTrace();
returnfalse;
}
try{
fOut.close();
}catch(IOExceptione){
枝數e.printStackTrace();
returnfalse;
}
returntrue;
}

C. Android黑科技,圖片終極壓縮

一、支持自定義配置、不失真和批量處理

二、圖片上傳為什麼要壓縮
1、圖片伺服器空間限制,磁碟昂貴
2、網路不穩定,大文件需要斷點續傳
3、盡可能避免安卓OOM異常
4、後台約定的規則<200KB
5、需要上傳原圖的應用有醫院臨床項目、金融銀行

三、圖片壓縮流程
1、遞歸每張圖片
2、設置圖片格式 Bitmap.CompressFormat.JPG
png, jpg,webp
3、質量壓縮bitmap.compress(format,quality,baos)
由於png是無損壓縮,所以設置quality無效(不適合作為縮略圖)
采樣率壓縮BitmapFactory.Options.inSampleSize
縮小圖片解析度,減少所佔用磁碟空間和內存大小
縮放壓縮canvas.drawBitmap(bitmap, null,rectF,null)
減少圖片的像素,降低所佔用磁碟空間大小和內存大小,可用於緩存縮略圖
JNI調用JPEG庫
Android的圖片引擎使用的是閹割版的skia引擎,去掉了圖片壓縮中的哈夫曼演算法
4、像素修復
5、返回壓縮
6、完成壓縮

demo: https://github.com/ApeCold/Learn_Compress_Sample

參考:
Luban框架 https://github.com/Curzibn/Luban
缺點
1、當沒有設定壓縮路徑時,拋異常無閃退
2、源碼中,壓縮比率固定值60,無法修改
3、壓縮配置,參數不太適應真實項目需求
4、不能指定壓縮大小,比如100KB以內
https://github.com/zettsu/Compressor

D. android圖片壓縮避免OOM

簡單吹下牛:很多app都會要載入圖片,但是如果不壓縮圖片就很容易OOM,

個人看來OOM 出現原因總的來說分為兩種:

一種是內存溢出(好像在扯淡,OOM本身就是內存溢出)

另一種是:圖片過大,一個屏幕顯示不完全造成,似乎也是一。。 如有錯誤純屬扯淡;

為了避免上面的情況:載入圖片的時候可以進行壓縮,上傳的時候要可以進行壓縮,在圖片不可見的時候進行回收(onDetach()),再吹一句 用了fresco+壓縮之後載入圖片完全沒問題了。

一、質量壓縮方法:

privateBitmap compressImage(Bitmap image) {

ByteArrayOutputStream baos =newByteArrayOutputStream();

image.compress(Bitmap.CompressFormat.JPEG,100, baos);//質量壓縮方法,這里100表示不壓縮,把壓縮後的數據存放到baos中

intoptions =100;

while( baos.toByteArray().length /1024>100) {//循環判斷如果壓縮後圖片是否大於100kb,大於繼續壓縮

baos.reset();//重置baos即清空baos

image.compress(Bitmap.CompressFormat.JPEG, options, baos);//這里壓縮options%,把壓縮後的數據存放到baos中

options -=10;//每次都減少10

}

ByteArrayInputStream isBm =newByteArrayInputStream(baos.toByteArray());//把壓縮後的數據baos存放到ByteArrayInputStream中

Bitmap bitmap = BitmapFactory.decodeStream(isBm,null,null);//把ByteArrayInputStream數據生成圖片

returnbitmap;

}

二、圖片按比例大小壓縮方法(根據Bitmap圖片壓縮)

privateBitmap comp(Bitmap image) {

ByteArrayOutputStream baos =newByteArrayOutputStream();

image.compress(Bitmap.CompressFormat.JPEG,100, baos);

if( baos.toByteArray().length /1024>1024) {//判斷如果圖片大於1M,進行壓縮避免在生成圖片(BitmapFactory.decodeStream)時溢出

baos.reset();//重置baos即清空baos

image.compress(Bitmap.CompressFormat.JPEG,50, baos);//這里壓縮50%,把壓縮後的數據存放到baos中

}

ByteArrayInputStream isBm =newByteArrayInputStream(baos.toByteArray());

BitmapFactory.Options newOpts =newBitmapFactory.Options();

//開始讀入圖片,此時把options.inJustDecodeBounds 設回true了

newOpts.inJustDecodeBounds =true;

Bitmap bitmap = BitmapFactory.decodeStream(isBm,null, newOpts);

newOpts.inJustDecodeBounds =false;

intw = newOpts.outWidth;

inth = newOpts.outHeight;

//現在主流手機比較多是800*480解析度,所以高和寬我們設置為

floathh = 800f;//這里設置高度為800f

floatww = 480f;//這里設置寬度為480f

//縮放比。由於是固定比例縮放,只用高或者寬其中一個數據進行計算即可

intbe =1;//be=1表示不縮放

if(w > h && w > ww) {//如果寬度大的話根據寬度固定大小縮放

be = (int) (newOpts.outWidth / ww);

}elseif(w < h && h > hh) {//如果高度高的話根據寬度固定大小縮放

be = (int) (newOpts.outHeight / hh);

}

if(be <=0)

be =1;

newOpts.inSampleSize = be;//設置縮放比例

//重新讀入圖片,注意此時已經把options.inJustDecodeBounds 設回false了

isBm =newByteArrayInputStream(baos.toByteArray());

bitmap = BitmapFactory.decodeStream(isBm,null, newOpts);

returncompressImage(bitmap);//壓縮好比例大小後再進行質量壓縮

}

E. 手機圖片怎麼壓縮成文件發給別人

1. 手機圖片怎麼壓縮
手機圖片怎麼壓縮 手機怎麼把多個圖片壓縮打包
具體步驟如下:

1、在手機的瀏覽器中搜索圖片壓縮,會找到這樣一個在線壓縮的網站,進入到網站首頁中,在網站首頁的右上方會看到一個小按鈕,點擊按鈕會出現網站的導航。

2、在導航的位置知道文檔處理,點擊文檔處理就會看到圖片壓縮,點擊圖片壓縮進入到壓縮的頁面。

3、在壓縮的頁面可以看到選擇文件,選擇需要進行壓縮的圖片文件,手機網站最多可以添加四張圖片。如果圖片比較多,就要多壓縮幾次。

4、添加文件後,將頁面下滑會看到壓縮的各個設置,將幾種設置調整到自己需要的選項即可。

5、調整完後,點擊開始壓縮,需要進行壓縮的圖片文件就會在壓縮的過程中,請耐心等待,壓縮完成的圖片文件可以點擊立即下載,下載到指定的文件夾中,這樣就完成了。
怎樣用手機把圖片壓縮成文件?
手機端的壓縮:

如果習慣直接用手機瀏覽網頁並下載資源,請安裝「ES文件瀏覽器(圖1)。

圖1

很多Android手機並不支持存儲卡擴展,而又捨不得刪除相冊裡面拍攝的圖片。實際上,可以現在PC或手機端將不想刪除的圖片文件壓縮成zip或rar格式的壓縮包再刪除源文件。然後安裝「完美漫畫」此類APP可以直接讀取壓縮包裡面的圖片(圖2~3),從而起到壓縮手機空間的功效。

圖2~3 將圖片壓縮後可釋放手機空間,然後再用第三方軟體直接訪問壓縮包裡面的圖片.
圖片在手機上怎麼壓縮大小?
現在手機攝影拍攝出來的照片基本上都比較大,很多分享的平台最大隻支持幾百兆的圖片; 我們通過QQ將圖片發送給朋友的時候,自動壓縮的圖片清晰度會有很大的變化。

1、在電腦上通過壓縮軟體進行壓縮,打開壓縮軟體頁面會有圖片壓縮、視頻壓縮和pdf壓縮的功能選項,點擊圖片壓縮就會進入圖片壓縮的操作界面。 2、之後添加需要進行壓縮的圖片文件,點擊添加文件一次可以添加多張圖片。

也可以直接把圖片拖拽添加進操作界面。 3、圖片添加好之後,頁面中會有圖片大小的顯示,圖片壓縮之前有多大可以很清楚的看到。

4、之後選擇壓縮的選項,在添加文件的下方有縮小優先、普通壓縮和清晰優先的選擇,默認為普通壓縮。還有保持原格式、JPG、選擇一個合適的。

5、壓縮之後的圖片可以保存在原文件夾中,也可以自定義保存的位置,保存在哪裡都一樣,只要自己能夠找到文件就好。 6、最後點擊頁面右下角開始壓縮的按鈕,軟體就會對添加的圖片文件進行壓縮。

壓縮的過程只需要幾秒鍾就可以完成,靜靜等待壓縮完成。 7、等待壓縮完成之後,點擊查看文件的按鈕,可以和壓縮之前進行對比,圖片明顯變小了。

上述就是教你如何壓縮圖片,手機中的照片同樣可以進行壓縮,方法簡單,可以實際操作一下。 。
手機怎樣壓縮圖片
可以下載圖片壓縮等第三方軟體來壓縮。這里以照片壓縮app為例,操作步驟如下:

1、打開手機軟體下載中心,搜索「照片壓縮」,下載並安裝。

2、下載安裝完成之後,在手機主屏幕上找到並點擊打開此app,進入到首界面。

3、點擊軟體最上方的「+」圖標,進入到相冊界面。

4、在相冊中,選擇想要壓縮的照片,可以選擇多個。

5、選擇好後需要壓縮的照片後,點擊右上角的「選擇」按鈕鍵。

6、進入到「照片壓縮」界面的詳細設置界面,根據需要,將壓縮圖片的大小和質量自行選擇設定。

點擊「繼續」即可完成照片圖片的壓縮。
用手機版美圖秀秀怎麼壓縮照片?
手機版美圖秀秀不能壓縮照片,可以使用「照片壓縮」來壓縮照片。方法如下:

1、打開手機軟體下載中心,搜索「照片壓縮」,下載並安裝。

2、下載安裝完成之後,在手機主屏幕上找到並點擊打開此app,進入到首界面。

3、點擊軟體最上方的「+」圖標,進入到相冊界面。

4、在相冊中,選擇想要壓縮的照片,可以選擇多個。

5、選擇好後需要壓縮的照片後,點擊右上角的「選擇」按鈕鍵。

6、進入到「照片壓縮」界面的詳細設置界面,根據需要,將壓縮圖片的大小和質量自行選擇設定。點擊「繼續」即可完成照片壓縮。
手機上用的壓縮照片的軟體有哪些?
手機上壓縮照片的軟體有:縮小圖片、AVG圖片壓縮、照片編輯器、一個木函、批量圖片縮放等。

具體軟體介紹: 照片編輯器是一個專門處理照片的軟體,使用該軟體壓縮圖片,你可以根據自身需要,選擇圖片壓縮的大小。 一個木函有多種功能,其中有圖片壓縮功能,該功能可以壓縮任何圖片,但是壓縮後的圖片大小軟體已設定,你不能自己去設置這個圖片大小。

其他壓縮圖片方法:通過上傳圖片到QQ空間相冊來縮圖。 QQ空間的相冊在上傳圖片的時候會自動縮圖,上傳之後再下載即可。

注意該操作消耗流量,可在WiFi環境下使用,該方法應用的場景是批量縮圖。 (5)android壓縮圖片上傳擴展閱讀軟體壓縮圖片方法,以一個木函為例: 1、找到一個木函軟體,點擊進入。

2、進入軟體後,點擊最下方的「分類」。 3、進入分類界面後,點擊「工具」欄。

4、找到圖片壓縮,點擊進入。 5、點擊「選擇圖片」,選擇需要壓縮的圖片。

6、圖片選好後,確認壓縮,保存圖片。 通過上述操作,則圖片壓縮成功。
手機上如何將照片壓縮
在線的方法使用的人不多,但是是偶爾壓縮圖片文靜或是pdf文件就沒有必要安裝專門壓縮的壓縮工具看來,在線的工具就能完成。

1:將自己的手機照片准備好,上傳到電腦中,打開瀏覽器找到這樣一款在線壓縮軟體,在軟體的首頁找到在線圖片壓縮,點擊在線圖片壓縮下面的立即使用進入到壓縮的頁面。

2:在壓縮的頁面找到選擇文件,將需要壓縮的照片文件添加到壓縮的頁面中,每次壓縮可以添加四張照片文件。

3:添加文件後,在下面找到壓縮類型,第一行為清晰度的壓縮,第二行輸出格式的壓縮,將輸出格式設置為原格式即可。

4:點擊開始壓縮,需要壓縮的照片文件就會在壓縮的過程中,請耐心等待壓縮的完成。
怎麼在手機把圖片製作為壓縮包
操作大概可以分為7步,具體如下: 1、在「文件管理」中選擇自己壓縮的圖片,然後點擊位於手機屏幕下方的「復制」或「剪切」按鈕。

2、在頁面跳轉之後,選擇並點擊你需要儲存圖片的位置 。 3、 頁面跳轉之後,點擊位於手機屏幕下方的「新建文件夾」。

4、輸入文件夾的名稱,輸入完成後,點擊「保存」 按鈕。 5、找到並點擊打開新建的文件夾,點擊位於手機屏幕下方的「粘帖」功能。

6、粘帖完成後,退出並找到 文件夾,長按文件夾,點擊彈出菜單的「壓縮文件」按鈕。 7、 輸入壓縮文件的名稱,輸入完成後,點擊「開始壓縮」 按鈕,圖片壓縮完成。


存放在手機上的圖片怎麼壓縮大小?
圖片一般是不會很大的,但是很多圖片堆積在一起就會是很多了,生活中我們經常拍攝照片來記錄生活記錄美,這些照片我們會珍藏起來,那麼我們應該怎樣減小圖片面積呢,圖片壓縮之後不會不清晰嗎, 壓縮圖片對圖片的像素有影響怎麼辦,我們應給怎樣壓縮圖片文件。

我下面就將大家一個批量壓縮圖片的方法,能同時對多個圖片壓縮,這個工具壓縮圖片也會有小的影響,不過已經將對圖片的影響最小化了,我們下面就告訴大家操作方法:

1、安裝相對應的輔助工具(迅捷圖片壓縮軟體)運行工具;

2、打開工具,看到頁面上的圖片壓縮選項,點擊這個藍色的按鈕進入將要實行操作的頁面。

3、在頁面上點擊選擇文件按鈕,或是選擇文件夾按鈕,都可以將存放圖片文件的文件夾打開,然後對圖片進行選擇。

4、選擇文件時我們按住多選鍵Ctrl,選擇我們需要壓縮的圖片添加到頁面中間的位置。

5、做到這一步了,下面我們可以對壓縮圖片的壓縮選項做一個選擇,可以轉換圖片的格式,轉化為或者是,將圖片壓縮可以選擇的壓縮選項如下。

6、將所有的參數設置完成之後我們點擊頁面上的「開始壓縮按鈕就可以進行壓縮了。

日常使用的壓縮圖片的辦法是將圖片壓縮為壓縮包,在使用是還要對其解壓才能使用,這種壓縮方法壓縮圖片不同點在於不會將圖片文件壓縮為壓縮包,能將圖片最大限度的縮小,圖片的狀態不會改變。

F. 手機怎麼把照片壓縮變小,太大上傳不了

這個很容易實現啊,比如用這個在線圖片壓縮工具,想把圖片文件的大小減到多少都行,直接設置一下數值,馬上瞬間就能完成了。在線智能壓縮圖片大小,圖片壓縮體積

▼ 在線圖片智能壓縮使用步驟:

一、首先點擊加號添加需要壓縮的圖片。目前已知支持對jpg、png等多種常見的圖片格式進行壓縮,如果上傳圖片並壓縮成功,則代表支持該圖片格式。
二、可以自行修改圖片需要被壓縮到的最大寬高尺寸,默認為圖片原始的寬高尺寸,且寬高比例是自動鎖定的。
三、必須設置圖片被壓縮後,期望輸出的圖片文件的最大佔用空間。(必填項)
四、選擇圖片生成的演算法。默認為混合優先演算法,絕大多數情況下使用默認演算法即可。
五、壓縮的設定值不能小於1Kb,但圖片壓縮的最終效果可以小於1Kb。

G. 說說在 Android 中如何壓縮圖片

目前存在兩種壓縮圖片方式:

而圖片有三種存在形式:

bigmap 在內存中的大小是按像素計算的,也就是width * height,所以如果需要在 Android 中顯示照片,那麼就必須進行按比例壓縮,避免因為內存消耗過大,導致 APP 退出。

是不是很簡單呀 O(∩_∩)O哈哈~

閱讀全文

與android壓縮圖片上傳相關的資料

熱點內容
安卓如何傳輸圖片給蘋果 瀏覽:829
可編程式控制制器原理應用網路 瀏覽:587
社畜解壓是什麼意思 瀏覽:436
吉利博越用哪個app啊 瀏覽:513
西安單片機晶振電容 瀏覽:187
分地面積的演算法 瀏覽:179
安卓手機升級包後怎麼安裝 瀏覽:262
濟南壓縮餅干哪有賣 瀏覽:524
怎麼用rar解壓百度網盤 瀏覽:660
手機哪款解壓縮軟體好用 瀏覽:80
失控的演算法代碼 瀏覽:297
程序員說有人愛你怎麼回答 瀏覽:106
騰訊游戲安卓怎麼用ios登錄 瀏覽:759
石獅雲存儲伺服器 瀏覽:180
python滲透入門到精通 瀏覽:272
如何真機調試安卓進程 瀏覽:739
農行app怎麼交公共維修基金 瀏覽:667
python中字典增加元素 瀏覽:240
伺服器端渲染的數據怎麼爬 瀏覽:164
壓縮空氣噴射器 瀏覽:490