android - 从指定的屏幕区域创建位图

标签 android bitmap

我正在尝试从屏幕上的特定区域创建位图。例如在下图中,我如何捕获下方的窗口区域并将其转换为位图?

Image

我知道您可以使用 setDrawingCacheEnabled(true),但是当我想要的只是 View 中的一个区域时,它会捕获整个 View 。

最佳答案

在从 Bitmap 创建一个 InputStream 之后,您实际上可以使用 Android 的 BitmapRegionDecoder.decodeRegion()

您可以将 Rect 对象传递给 decodeRegion 方法,如下所示:

BitmapRegionDecoder brd = BitmapRegionDecoder.newInstance(inputStream, true);
Bitmap croppedBitmap = brd.decodeRegion(new Rect(left, top, right, bottom), null);

干杯问:)

关于android - 从指定的屏幕区域创建位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17527620/

相关文章:

java - 所有java对象都保存在内存中直到以某种方式被销毁吗?

java - 为叠加操作栏指定布局上边距

具有 10 个标记的 Android 基本 API v2 MapActivity outOfMemory

android - 将多个自定义元素设置为 MultiAutoCompleteTextView : Android

java - 调用fragment中的方法

java - Android:解析 .getString 方法为当前用户的字段返回 null

android - 将图像转换为位图并减小其大小

Android:canvas.drawBitmap 和 BitmapDrawable.draw 之间的区别?

c# - 当我的 Xamarin 应用程序仅在 Release模式下中断时,我该如何调试它?

c# - 无法在C#中获得正确的位图1290 x 960图像?