我正在使用来自 Android Developers Samples 的相机代码在预览时获取图像的一部分并对其进行一些处理。
我想获取预览中从 [0,0] 到 [99,99] 的正方形图像,对其进行处理并在 ImageView 中动态显示。我尝试通过输入以下代码来获取当前图像:
final Activity activity = getActivity();
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
final Bitmap originalBitmap = mTextureView.getBitmap();
// more code here
}
});
at this part of the code .通过调用 getBitmap(),它使应用程序变得非常慢。
有没有一种有效的方法来以 1:1 的比例获得我需要的方形部分?
我知道我可以用更小的尺寸调用 getBitmap() 并使其更快,但我想避免丢失数据。
最佳答案
这是为了什么?
CustomView mTextureView = new CustomView(getApplicationContext());
new Task().execute(mTextureView.getBitmap());
这是异步任务
public class Task extends AsyncTask<Bitmap, Void, Void> {
public Task() {
}
@Override
protected Void doInBackground(Bitmap... objects) {
//... do stuff
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
}
}
关于java - 从 TextureView 获取图像的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35537424/