Android圖片處理實例分析
本文實例講述了Android圖片處理的方法。分享給大家供大家參考,具體如下:
package cn.szbw.util;
import Android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
public class Utils {
/***
* 加載本地圖片
* @param context:主運行函數實例
* @param bitAdress:圖片地址,一般指向R下的drawable目錄
* @return
*/
public final Bitmap CreatImage(Context context, int bitAdress) {
Bitmap bitmaptemp = null;
bitmaptemp = BitmapFactory.decodeResource(context.getResources(),bitAdress);
return bitmaptemp;
}
//2.圖片平均分割方法,將大圖平均分割為N行N列,方便用戶使用
/***
* 圖片分割
* @param g
* :畫布
* @param paint
*:畫筆
* @param imgBit
*:圖片
x
*:X軸起點坐標
* @param y
*:Y軸起點坐標
* @param w
* :單一圖片的寬度
* @param h
*:單一圖片的高度
* @param line
*:第幾列
* @param row
* :第幾行
*/
public final void cuteImage(Canvas g, Paint paint, Bitmap imgBit, int x,
int y, int w, int h, int line, int row) {
g.clipRect(x, y, x + w, h + y);
g.drawBitmap(imgBit, x - line * w, y - row * h, paint);
g.restore();
}
//3.圖片縮放,對當前圖片進行縮放處理
/***
* 圖片的縮放方法
* * @param bgimage
*:源圖片資源
* @param newWidth
*:縮放后寬度
* @param newHeight
*:縮放后高度
* @return
*/
public Bitmap zoomImage(Bitmap bgimage, int newWidth, int newHeight) {
// 獲取這個圖片的寬和高
int width = bgimage.getWidth();
int height = bgimage.getHeight();
// 創(chuàng)建操作圖片用的matrix對象
Matrix matrix = new Matrix();
// 計算縮放率,新尺寸除原始尺寸
float scaleWidth = ((float) newWidth) / width;
float scaleHeight = ((float) newHeight) / height;
// 縮放圖片動作
matrix.postScale(scaleWidth, scaleHeight);
Bitmap bitmap = Bitmap.createBitmap(bgimage, 0, 0, width, height,
matrix, true);
return bitmap;
}
//4.繪制帶有邊框的文字,一般在游戲中起文字的美化作用
/**
* 繪制帶有邊框的文字
* @param strMsg
* :繪制內容
* @param g
*:畫布
* @param paint
*:畫筆
* @param setx
*:X軸起始坐標
* @param sety
*:Y軸的起始坐標
* @param fg
*:前景色
* @param bg
* :背景色
*/
public void drawText(String strMsg, Canvas g, Paint paint, int setx,
int sety, int fg, int bg) {
paint.setColor(bg);
g.drawText(strMsg, setx + 1, sety, paint);
g.drawText(strMsg, setx, sety - 1, paint);
g.drawText(strMsg, setx, sety + 1, paint);
g.drawText(strMsg, setx - 1, sety, paint);
paint.setColor(fg);
g.drawText(strMsg, setx, sety, paint);
g.restore();
}
}
更多關于Android相關內容感興趣的讀者可查看本站專題:《Android圖形與圖像處理技巧總結》、《Android開發(fā)入門與進階教程》、《Android調試技巧與常見問題解決方法匯總》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結》、《Android視圖View技巧總結》、《Android布局layout技巧總結》及《Android控件用法總結》
希望本文所述對大家Android程序設計有所幫助。
- Android單點觸控實現(xiàn)圖片平移、縮放、旋轉功能
- 基于Android 實現(xiàn)圖片平移、縮放、旋轉同時進行
- Android UI之ImageView實現(xiàn)圖片旋轉和縮放
- Android實現(xiàn)圖片反轉、翻轉、旋轉、放大和縮小
- Android 圖片縮放與旋轉的實現(xiàn)詳解
- Android中利用matrix 控制圖片的旋轉、縮放、移動
- Android Tween動畫之RotateAnimation實現(xiàn)圖片不停旋轉效果實例介紹
- android圖片處理之讓圖片變成圓形
- Android圖片處理:識別圖像方向并顯示實例教程
- android圖片處理之讓圖片一直勻速旋轉
相關文章
Android使用百度地圖出現(xiàn)閃退及定位時顯示藍屏問題的解決方法
這篇文章主要介紹了Android使用百度地圖出現(xiàn)閃退及定位時顯示藍屏問題的解決方法,需要的朋友可以參考下2018-01-01
Android編程開發(fā)實現(xiàn)TextView顯示表情圖像和文字的方法
這篇文章主要介紹了Android編程開發(fā)實現(xiàn)TextView顯示表情圖像和文字的方法,結合實例形式分析了Android中TextView的使用技巧,需要的朋友可以參考下2015-12-12
Android中使用socket使底層和framework通信的實現(xiàn)方法
native和framework的通信是通過jni,但是這一般只是framework調用native,native如果有消息要怎樣通知上層 呢?android中GSP模塊提供一種解決思路,但是實現(xiàn)有些復雜,這里介紹一種使用socket通信的方法可以使native和framework自由通信,感興趣的朋友一起看看吧2016-11-11
Android 模擬新聞APP顯示界面滑動優(yōu)化實例代碼
所謂滑動優(yōu)化就是滑動時不加載圖片,停止才加載,第一次進入時手動加載。下面通過本文給大家介紹android 模擬新聞app顯示界面滑動優(yōu)化實例代碼,需要的朋友可以參考下2017-03-03
安裝android開發(fā)環(huán)境原始版(windows版)
安裝android開發(fā)環(huán)境原始版(windows版)的詳細步驟2013-03-03
Android編程實現(xiàn)仿優(yōu)酷旋轉菜單效果(附demo源碼)
這篇文章主要介紹了Android編程實現(xiàn)仿優(yōu)酷旋轉菜單效果的方法,較為詳細的分析了Android實現(xiàn)旋轉菜單的布局與功能實現(xiàn)技巧,并附帶完整的demo源碼供讀者下載參考,需要的朋友可以參考下2015-12-12
Android OnFocuChangeListener焦點事件詳解
這篇文章主要為大家詳細介紹了Android OnFocuChangeListener焦點事件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09

