【发布时间】:2013-07-05 20:14:30
【问题描述】:
我正在尝试从屏幕上的特定区域创建位图。例如在下图中如何捕获下面的窗口区域并将其转换为位图?
我知道你可以使用 setDrawingCacheEnabled(true),但是当我想要的只是视图中的一个区域时,它会捕获整个视图。
【问题讨论】:
-
通过启用绘图缓存来裁剪你得到的位图?
我正在尝试从屏幕上的特定区域创建位图。例如在下图中如何捕获下面的窗口区域并将其转换为位图?
我知道你可以使用 setDrawingCacheEnabled(true),但是当我想要的只是视图中的一个区域时,它会捕获整个视图。
【问题讨论】:
从Bitmap 创建InputStream 后,您实际上可以使用Android 的BitmapRegionDecoder.decodeRegion()。
您可以像这样将Rect 对象传递给decodeRegion 方法:
BitmapRegionDecoder brd = BitmapRegionDecoder.newInstance(inputStream, true);
Bitmap croppedBitmap = brd.decodeRegion(new Rect(left, top, right, bottom), null);
干杯 q:)
【讨论】: