乙個bitmap工具類

2021-09-24 14:43:56 字數 3168 閱讀 6645

public class bitmaputil 

public static bitmaputil getinstance() }}

return instance;

}/**

* decodefile4.4以上直接使用的fileinputstream,需要多次讀取

* decodestream可以使用bufferedinputstream提高讀寫效能

** @param is io流

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmap(inputstream is, boolean isrgb)

return bitmapfactory.decodestream(new bufferedinputstream(is));

}/**

* bitmap縮圖

* @param is io流

* @param maxwidth 最大寬度 建議為螢幕寬度

* @param maxheight 最大高度 建議為螢幕寬度

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmap(inputstream is,int maxwidth, int maxheight, boolean isrgb)

options.injustdecodebounds = false;

return bitmapfactory.decodebytearray(bytes, 0, bytes.length, options);

}/**

* 讀取資源資料夾下

** @param res getresources

* @param id 檔案id

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmapresources(resources res, int id, boolean isrgb)

/*** 讀取資源資料夾下的縮圖

** @param res getresources

* @param id 檔案id

* @param maxwidth 最大寬度 建議為螢幕寬度

* @param maxheight 最大高度 建議為螢幕寬度

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmapresources(resources res, int id, int maxwidth, int maxheight, boolean isrgb)

/*** 獲取bytearrayoutputstream位元組陣列

** @param is inputstream

* @return 位元組陣列

*/private byte input2byte(inputstream is)

return os.tobytearray();

} catch (ioexception e) finally catch (ioexception e) }}

/*** 讀取sd卡

** @param path 檔案路徑

* @param filename 檔案名字

* @return 高畫質bitmap

*/public bitmap getbitmapfile(string path, string filename, boolean isrgb)

/*** 讀取sd卡

** @param file 檔案

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmapfile(file file, boolean isrgb) catch (filenotfoundexception e)

return null;

}/**

* 讀取sd卡的縮圖

** @param path 檔案路徑

* @param filename 檔案名字

* @param maxwidth 最大寬度 建議為螢幕寬度

* @param maxheight 最大高度 建議為螢幕寬度

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmapfile(string path, string filename, int maxwidth, int maxheight, boolean isrgb)

/*** 讀取sd卡的縮圖

** @param file 檔案

* @param maxwidth 最大寬度 建議為螢幕寬度

* @param maxheight 最大高度 建議為螢幕寬度

* @param isrgb 是否使用rgb_565壓縮

* @return bitmap

*/public bitmap getbitmapfile(file file, int maxwidth, int maxheight, boolean isrgb)

options.injustdecodebounds = false;

try catch (filenotfoundexception e)

return null;

}/**

* 獲取縮放比例

** @param options bitmapfactory.options

* @param maxwidth 最大寬度 建議為螢幕寬度

* @param maxheight 最大高度 建議為螢幕寬度

* @return insamplesize

*/private int calculateinsamplesize(bitmapfactory.options options, int maxwidth, int maxheight)

return insamplesize;

}}

乙個Log的工具類

由於專案是屬於專項定製,在私有網路中執行,有一天突然說程式出問題了,現場沒有自己人,無法定位問題,一臉蒙蔽。因為專案可以把崩潰日誌儲存到檔案,於是想把log日誌儲存一下,以便方便定位。public class logutils 判斷log檔案大小,file myfile new file logpa...

乙個分頁的工具類

package com.docworks.util 該類用於計算分頁資訊 author liuwei date 2012 9 26 public class pageutil 初始化頁面資訊,計算起始索引位置和結束索引位置的構造方法 param currentpage 當前頁碼 param perp...

乙個工具類的單例模式

incompatible pointer types assigning to id from class 最後,發現,用單例模式才可以。原因 類方法的self不能充當delegate 下面是stackoverflow裡解決方法,構造單例模式 utility.h inte ce utility ns...