#java #android #ocr #tesseract
#java #Android #ocr #тессеракт
Вопрос:
Мой клиент нанял меня для создания приложения для Android, которое выполняло бы распознавание изображения с помощью Tesseract для преобразования его в PDF с возможностью поиска.
В настоящее время я могу извлекать текст из изображений с помощью этого кода;
String extractText(String imagePath)
{
dataPath= Environment.getExternalStorageDirectory().toString() "/Android/data/" appContext.getPackageName() "/";
File tessdata = new File(dataPath);
if (!tessdata.exists() || !tessdata.isDirectory())
{
throw new IllegalArgumentException("Data path must contain subfolder tessdata!");
}
Bitmap image= BitmapFactory.decodeFile(imagePath);
TessBaseAPI baseApi = new TessBaseAPI();
baseApi.init(dataPath, "eng");
baseApi.setImage(image);
String recognizedText = baseApi.getUTF8Text();
baseApi.end();
return recognizedText;
}
Приведенный выше код помогает мне получить текст на изображении точно в виде строки, но я не знаю, как создать PDF-файл с возможностью поиска с этим текстом.
Ответ №1:
getUTF8Text
возвращает только обычный текст. Вам нужно будет использовать TessPDFRenderer
API для вывода PDF.
https://github.com/tesseract-ocr/tesseract/tree/master/src/api
Комментарии:
1. Привет, нгуенк, можно ли использовать API TessPDFRenderer в Android Studio ?.
2. Можете ли вы предоставить больше информации о том, как использовать API ?.
3. Ознакомьтесь с модульными тестами в разделе github.com/nguyenq/tess4j/tree/master/src/test . Вы можете применить его к своему коду Android.