【发布时间】:2013-04-11 08:35:47
【问题描述】:
我正在尝试通过将位图转换为字节数组,然后将字节数组转换为字符串来设置 OCR 功能。这就是我尝试过的
{
mBitmap = Bitmap.createBitmap (mContent.getWidth(), mContent.getHeight(), Bitmap.Config.RGB_565);
img.setImageBitmap(mBitmap);
}
Canvas canvas = new Canvas(mBitmap);
try
{
FileOutputStream mFileOutStream = new FileOutputStream(mypath);
img.setImageBitmap(mBitmap);
v.draw(canvas);
mBitmap.compress(Bitmap.CompressFormat.PNG, 90, mFileOutStream);
ByteArrayOutputStream boas = new ByteArrayOutputStream();
mBitmap.compress(Bitmap.CompressFormat.JPEG, 100, boas);
byte[] b = boas.toByteArray();
String str3=b.toString();
Log.i("string ", "***** "+str3);
String str = Base64.encodeToString(b, Base64.DEFAULT);
txt.setText("STR "+str);
Log.i("string ", "****str***** "+str);
String str2 = new String(b,"UTF-8");
Log.i("string ", "****str***** "+str2);
mFileOutStream.flush();
mFileOutStream.close();
String url = Images.Media.insertImage(getContentResolver(), mBitmap, "title", null);
Log.v("log_tag","url: " + url);
}
但是我得到的结果完全不相关
【问题讨论】:
-
您想从图像中提取文本 (OCR) 还是将原始图像字节转换为 Base64?
-
是的,我想从图像中提取文本。我们是否有任何 api 或其他解决方法。
-
不,java/android 中没有默认的 OCR 库。使用第三方的。
标签: android encoding bitmap bitmapfactory