2011-12-27 69 views
4

我在ImageView中放置图像,并实施多点触控来调整图像大小并移动图像。现在我需要将调整大小的图像保存到图像文件。我已经尝试过.getDrawingCache(),但该图像具有ImageView的大小。我想让图像显示ImageView显示的内容,但是具有完整分辨率(大于ImageView)。Android - 将ImageView保存为全分辨率图像文件

任何想法?

回答

0

我的解决办法是使用矩阵,我用ImageView来获得翻译,我也有该图像的规模。使用这两个我裁剪原始图像。

Bitmap resizedBitmap = Bitmap.createBitmap(
         BitmapFrontCover, (int) UpperLeftCornerX, 
         (int) UpperLeftCornerY, (int) CropWidth, 
         (int) CropHeight); 
4

你可以持有背景位图对象,你可以用这段代码调整:

Matrix matrix = new Matrix(); 
matrix.postScale(scaledWidth, scaledHeight); 

Bitmap resizedBitmap = Bitmap.createBitmap(originalBitmap, 0, 0, 
    originalBitmap.width(), originalBitmap.height(), matrix, true); 

并保存后使用此代码:

OutputStream fOut = null; 
File file = new File(strDirectoy,imgname); 
fOut = new FileOutputStream(file); 

resizedBitmap.compress(Bitmap.CompressFormat.PNG, 0, fOut); 
fOut.flush(); 
fOut.close(); 
+0

+1它工作的人... 而(真) Log.i( “多”, “谢谢”); – Farhan 2011-12-27 13:09:58