图片分割_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 图片分割

图片分割

 2015/3/11 16:18:17  代码小黑  程序员俱乐部  我要评论(0)
  • 摘要:首先建立一个小块图片的类,保存切割后的图片publicclassImagePiece{privateintindex;privateBitmapbitmap;publicImagePiece(){}publicImagePiece(intindex,Bitmapbitmap){this.index=index;this.bitmap=bitmap;}publicintgetIndex(){returnindex;}publicvoidsetIndex(intindex){this
  • 标签:图片

首先建立一个小块图片的类,保存切割后的图片

class="brush:java;collapse:true;;gutter:true;">public class ImagePiece {
	private int index;
	private Bitmap bitmap;
	public ImagePiece()
	{}
	public ImagePiece(int index,Bitmap bitmap) {
		this.index=index;
		this.bitmap=bitmap;
	}
	
	public int getIndex() {
		return index;
	}
	
	public void setIndex(int index) {
		this.index = index;
	}
	
	public Bitmap getBitmap() {
		return bitmap;
	}
	
	public void setBitmap(Bitmap bitmap) {
		this.bitmap = bitmap;
	}
	
	@Override
	public String toString() {
		return "ImagePiece [index=" + index + ", bitmap=" + bitmap
				+ ", toString()=" + super.toString() + "]";
	}

}

  切割图片

/**
	 * 传入一个bitmap 
	 * @param bitmap
	 * @param piece
	 * @return List<ImagePiece>
	 */
	public static List<ImagePiece> splitImage(Bitmap bitmap,int piece)
	{
		
		List<ImagePiece> imagePieces=new ArrayList<ImagePiece>();
		
		
		int width=bitmap.getWidth();
		int height=bitmap.getHeight();
		
		int pieceWidth=Math.min(width, height)/piece;
		
		
		for(int i=0;i<piece;i++)
		{
			for(int j=0;j<piece;j++)
			{
				ImagePiece imagePiece=new ImagePiece();
				imagePiece.setIndex(j+i*piece);
				
				int x=j*pieceWidth;
				int y=i*pieceWidth;
				Log.i("x", x+"");
				Log.i("y", y+"");
				imagePiece.setBitmap(Bitmap.createBitmap(bitmap, x, y, pieceWidth, pieceWidth));
				
				imagePieces.add(imagePiece);
				
			}
		}
		return imagePieces;
	}

  

发表评论
用户名: 匿名