在Android开发中,我正着手于将一个Image
对象转换为Bitmap
,以便能将其附加到Canvas
对象上(因为Canvas
通常需要Bitmap
来绘图)。我首先将Image
转换为Google的ML Kit中的InputImage
,然后尝试从InputImage
提取出Bitmap
。但当我调用inputImage.getBitmapInternal()
时,得到的是null。我该如何解决这个问题呢?此外,鉴于当前代码涉及到多个转换步骤,是否有任何优化这一过程的方法?
以下是我在尝试转换时所使用的代码片段:
Image image = imageReader.acquireLatestImage();
InputImage inputImage = InputImage.fromMediaImage(image, rotation);
Bitmap bitmap = inputImage.getBitmapInternal();
// 然后我打算这样使用Bitmap...
canvas.drawBitmap(bitmap, 0, 0, new Paint(Paint.ANTI_ALIAS_FLAG));
我需要找到一种可靠的方法来从Image
直接或间接地获取可用的Bitmap
实例,并且如果可能的话,简化整个转换流程。