安卓学习之路_20140428_Matrix、Bitmap切图

1、Matrix 矩阵

http://www.jb51.net/article/37095.htm这里介绍很详细

2、Bitmap切图

import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;

/**
 * 图片切片类并绘制图片的类
 * 
 * @author Administrator
 * 
 */
public class ImageRect {
	/**
	 * 图片切块位图
	 */
	Bitmap myRect;
	/**
	 * 声明画笔
	 */
	Paint p = new Paint();
	/**
	 * 某个切片图的九宫格中的XY坐标
	 */
	int xLine, yLine;
	/**
	 * 声明切片图的宽高
	 */
	public static int rectW, rectH;

	/**
	 * 切片类的构造方法
	 * 
	 * @param currentImg
	 *            具体切的是哪一张图
	 * @param size
	 *            这个图的难度即:3,4,5
	 * @param id
	 *            小图片对应整张图的位置
	 */
	public ImageRect(Bitmap currentImg, int size, int id) {
		// {0,1,2}
		// {3,4,5}
		// {6,7,8}
		xLine = id % size;
		yLine = id / size;
		// 通过图片宽高获取到的小图片的宽高
		rectW = currentImg.getWidth() / size;
		rectH = currentImg.getHeight() / size;
		if (id == size * size - 1) {
			// 最后一张图片是白色的
			myRect = Bitmap.createBitmap(rectW, rectH, Bitmap.Config.ARGB_8888);
			Canvas tempC = new Canvas(myRect);
			tempC.drawColor(Color.WHITE);
		} else {
			// 把对应的小图片的位图创建出来
			myRect = Bitmap.createBitmap(currentImg, rectW * xLine, rectH
					* yLine, rectW, rectH);
		}

	}

	// 画图片
	public void paint(Canvas cc, int x, int y, Paint p) {
		cc.drawBitmap(myRect, x, y, p);
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值