- public Bitmap convertViewToBitmap(View view){
- Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(),
- Bitmap.Config.ARGB_8888);
- //利用bitmap生成画布
- Canvas canvas = new Canvas(bitmap);
- //把view中的内容绘制在画布上
- view.draw(canvas);
- return bitmap;
- }
2、
- /**
- * save view as a bitmap
- */
- private Bitmap saveViewBitmap(View view) {
- // get current view bitmap
- view.setDrawingCacheEnabled(true);
- view.buildDrawingCache(true);
- Bitmap bitmap = view.getDrawingCache(true);
- Bitmap bmp = duplicateBitmap(bitmap);
- if (bitmap != null && !bitmap.isRecycled()) { bitmap.recycle(); bitmap = null; }
- // clear the cache
- view.setDrawingCacheEnabled(false);
- return bmp;
- }
- public static Bitmap duplicateBitmap(Bitmap bmpSrc)
- {
- if (null == bmpSrc)
- { return null; }
- int bmpSrcWidth = bmpSrc.getWidth();
- int bmpSrcHeight = bmpSrc.getHeight();
- Bitmap bmpDest = Bitmap.createBitmap(bmpSrcWidth, bmpSrcHeight, Config.ARGB_8888); if (null != bmpDest) { Canvas canvas = new Canvas(bmpDest); final Rect rect = new Rect(0, 0, bmpSrcWidth, bmpSrcHeight);
- canvas.drawBitmap(bmpSrc, rect, rect, null); }
- return bmpDest;
- }