Von der tesseract v3.03 's release note unterstützt tesseract
jetzt die Render-PDF-Ausgabe mit durchsuchbarem Text, aber ich weiß nicht, wie ich diese Funktion in meinem Code verwenden soll.
Derzeit verwende ich tess-two für meine Android-App, dann frage ich mich, kann diese Funktion für Android arbeiten?
tesseract v3.03 rendern PDF mit durchsuchbarem Textbeispiel
Es wäre toll, wenn Sie mir ein Beispiel geben können, die tesseract
api verwendet pdf zu machen, und dann werde ich in dem Hafen von fehlenden Funktionen für tess-two
Bibliothek versuchen.
Vielen Dank im Voraus.
P/s: Ich kann die pdfrenderer Datei sehen, die Ausgabe von pdf verarbeiten kann, aber ich weiß nicht, wie man es mit Basisapi anwendet.
aktualisieren: hier ist mein Versuch:
tesseract::TessResultRenderer* renderer = new tesseract::TessPDFRenderer(nat->api.GetDatapath());
__android_log_print(ANDROID_LOG_ERROR, "Test_tesseract", "data path = %s", nat->api.GetDatapath());
if (!nat->api.ProcessPages(c_file_name, NULL, 0, renderer)) {
__android_log_print(ANDROID_LOG_ERROR, "Test_tesseract", "process page failed");
delete renderer;
return;
}
FILE* fout = fopen(c_pdf_file_name, "wb");
if (fout == NULL) {
__android_log_print(ANDROID_LOG_ERROR, "Test_tesseract", "Cannot create output file %s\n", c_pdf_file_name);
delete renderer;
return;
}
const char* data;
int dataLength;
bool boolValue = renderer->GetOutput(&data, &dataLength);
if (boolValue) {
fwrite(data, 1, dataLength, fout);
if (fout != stdout)
fclose(fout);
else
clearerr(fout);
}else{
__android_log_print(ANDROID_LOG_ERROR, "Test_tesseract", "Cannot get output file");
}
delete renderer;
Mein Code bei ProcessPages
Methode fehlgeschlagen ist. Nach dem Schreib log (Ich habe ein Problem mit Debugging in NDK), fand ich pdfrender BeginDocument
immer false zurück in TessBaseAPI::ProcessPages
Methode von baseapi.cpp
:
if (renderer && !renderer->BeginDocument(kUnknownTitle)) {
success = false;
}
Habe ich etwas verpasst?
P/s: Ich benutze tess-two
, die baseapi
lieber capi
Hallo @ R4j, hast du es geschafft, es funktioniert zu bekommen? – Bruce
eigentlich, ich habe keine Zeit, um es zu beenden, und ich beende dieses Projekt vor – R4j
Ich möchte dies fortsetzen, aber ich kann nicht finden, eine Möglichkeit zum Debuggen der nativen CPP-Code in Eclipse, welches Programm verwenden Sie debuggen? – Bruce