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
*:图片
*@paramx
*: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();

// 创建操作图片用的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();

}
}

更多相关文章

  1. Android中3D gallary的实现
  2. Android从相机或相册获取图片裁剪
  3. Android(安卓)从网络加载图片
  4. android camera2 api点击图片实现聚焦
  5. android camera2 api点击图片实现聚焦
  6. android 读取sd卡中的图片
  7. Android(安卓)selector下的属性值
  8. 2011.07.20——— android 获得当前view在屏幕的坐标
  9. Android(安卓)drawableleft如何设置图片大小

随机推荐

  1. android 手机号码归属地查询
  2. Android(安卓)ADT 11.0.0
  3. Android传感器之磁场传感器
  4. android 圆形 ImageView
  5. Appium的一点一滴:UiSelector
  6. linux
  7. android键盘弹出头部上移处理
  8. (1)The Android(安卓)Application Framew
  9. Android(安卓)ProgressBar的动画效果
  10. com.android.cts.appsecurity.AppSecurit