gpt4 book ai didi

java - 无法访问未找到 java.awt.image.RenderedImage 的 RenderedImage 类文件

转载 作者:行者123 更新时间:2023-11-30 01:01:00 27 4
gpt4 key购买 nike

我正在开发一个具有 OCR 模块的 Android 应用程序,在花了一些时间找到用于执行此操作的 API 之后,我从互联网上找到了一个特定的 API。我已经下载了他们的 jar 文件并将其导入(com.asprise.ocr.Ocr)到我的项目中。我的目的是使用该库从我的 SD 中的图像中提取信息并将它们显示在我的 android 应用程序上,但是当我运行该项目时,出现以下错误:

Error:(137, 35) error: cannot access RenderedImage
class file for java.awt.image.RenderedImage not found

从日志中,它告诉我错误来 self 的代码脚本的以下行:

String s = ocr.recognize(new File[]{file}, Ocr.RECOGNIZE_TYPE_ALL, `Ocr.OUTPUT_FORMAT_PLAINTEXT);

`

这是我的安卓代码部分:

try {
Bitmap bitmap;
BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();
bitmap = BitmapFactory.decodeFile(f.getAbsolutePath(),
bitmapOptions);

viewImage.setImageBitmap(bitmap);
String path = android.os.Environment
.getExternalStorageDirectory()
+ File.separator
+ "Phoenix" + File.separator + "default";
f.delete();
OutputStream outFile = null;
File file = new File(path, String.valueOf(System.currentTimeMillis()) + ".jpg");

///////////////////////////////////////////
Ocr.setUp(); // one time setup
Ocr ocr = new Ocr(); // create a new OCR engine
ocr.startEngine("eng", Ocr.SPEED_FASTEST); // English
String s = ocr.recognize(new File[]{file}, Ocr.RECOGNIZE_TYPE_ALL, Ocr.OUTPUT_FORMAT_PLAINTEXT);
System.out.println("Result: " + s);
Toast.makeText(getBaseContext() ,"IMAGE INFORMATION: "+s ,Toast.LENGTH_SHORT).show();
// ocr more images here ...
ocr.stopEngine();

//////////////////////////////

try {
outFile = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 85, outFile);
outFile.flush();
outFile.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}
}

谁能帮我解决上面android代码脚本的问题

最佳答案

好的,

你知道在标准的 Android API 中没有 java.awt.image.RenderedImage 这样的类吗?

Android 上的 Java 与普通 PC 上的 Java 不同,它没有所有相同的类和包,您知道吗?

因此,并非所有 Java 库都与 Android 兼容。

如果您可以将 java.awt.image.RenderedImage 的源代码及其所有具有与常规 java 中相同的包名称的依赖项复制到您的应用程序中,那么也许您可以修复这些不兼容错误。诀窍是将库所需的相同类添加到您的 Android 应用程序,但您可能需要编辑这些源代码以使其与 Android 兼容,因此它可能比仅从标准的“PC”java。

您可以尝试搜索适用于 Android 的专用 OCR。或者,如果您坚持使用这个库,那么您需要自己让它工作。

关于java - 无法访问未找到 java.awt.image.RenderedImage 的 RenderedImage 类文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39409411/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com