java - 从 ImageView 而不是 Drawable 获取图像
问题描述
请注意,我是新手。学习过程中
现在这段代码在做什么?它正在从可绘制的图像中读取图像,然后使用谷歌视觉从中获取文本。
Bitmap bitmap = BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.changing);
TextRecognizer textRecognizer = new TextRecognizer.Builder(getApplicationContext()).build();
if(!textRecognizer.isOperational()){
Toast.makeText(getApplicationContext(), "", Toast.LENGTH_SHORT).show();
}
else
{
Frame frame = new Frame.Builder().setBitmap(bitmap).build();
SparseArray<TextBlock> item = textRecognizer.detect(frame); //Yeh Frame Detect Kr rha he
StringBuilder sb = new StringBuilder();
for(int i = 0 ; i<item.size();i++){
TextBlock myitem = item.valueAt(i);
sb.append(myitem.getValue());
sb.append("\n");
}
注意: R.drawable.chang 是“更改”是我的图像名称的地方。现在我想用我在 ImageView 上上传的图像替换图像。
任何帮助都会奏效。
解决方案
您可以Bitmap
像这样从 imageview获取
Drawable dr = ((ImageView) imView).getDrawable();
Bitmap bmp = ((GlideBitmapDrawable)dr.getCurrent()).getBitmap();
推荐阅读
- android - 在 Android 上强制使用 WebARonARCore (Chromium)
- javascript - 如何在 React Material-UI 中更改活动标签 inkBarStyle 颜色和粗细?
- java - Netty 文件传输导致异常
- vba - 在 VBA excel 中使用 AND 和 Select case
- html - Firefox 和 Chrome 读取动画 gif 的方式是否与 Safari 不同?
- jwplayer - 使用投射到自定义接收器的问题
元素 - r - 如何为R中的有序对制作矩阵?
- bash - Bash 通过 ssh 连接 3 台机器的输出
- database - 将 Azure 上的数据库数据复制到 Azure 上的另一个数据库
- c - C - 'if' 之后的代码(以及在 'while' 内)不执行