Android에서 PDFBox를 사용하여 문서에서 텍스트를 추출하는 데 문제가 있습니다. 그러나 구문 분석기가 잘 작동하고있는 것으로 보입니다 (또는 적어도, 그 의미를 해석하는 것입니다.) "파싱 된 COSObject"로 검색하면 유감스럽게도 관련 결과가 표시되지 않습니다. (일부 문서의 경우 logcat이 스팸되고, 이 putput을 끄십시오)). getCharactersByArticle은이 문서에서 빈 출력을 반환합니다. vectorlistoftps가 비어 있습니다. 나는에 문서 업로드 한PDFBox 파서가 파싱 된 것으로 보이지만 텍스트 스트리퍼의 빈 출력
: 나는 시도 대부분의 다른 문서의 경우 https://ufile.io/cnvoq
은, 텍스트 추출은 잘 작동, 또는 나는이 일에 관련이없는 오류를 얻을. 하지만 여기에는 없습니다.
다음은 관련 코드 스 니펫입니다.
private void extractTextPosition() throws FileNotFoundException, IOException {
FileInputStream stream = new FileInputStream(var1);
PDFParser parser = new PDFParser(stream);
parser.parse();
Log.d("Parser has ","parsed");
StringWriter outString = new StringWriter();
CustomPDFTextStripper stripper = new CustomPDFTextStripper();
stripper.setStartPage(currentPage);
stripper.setEndPage(currentPage);
stripper.setSortByPosition(true);
try {
stripper.writeText(parser.getPDDocument(), outString);
} catch (Exception e) {
e.printStackTrace();
}
Vector<List<TextPosition>> vectorlistoftps = stripper.getCharactersByArticle();
}
CustomPDFTextStripper는 PDFTextStripper (내가 그것을 변경했지만, 모든 변경 사항이 주석 한)과 동일합니다.
어떤 도움
에 감사드립니다.
고맙습니다. 필자는 원래 페이지를 몇 페이지로 나눠서 페이지의 텍스트를 이미지로 변환했다는 사실을 깨닫지 못했습니다. 나는 그러한 예측할 수없는 행동을 싫어한다. 더 나은 PDF 분할기가 필요할 수도 있습니다 ... –
PDF 분할의 자연스러운 결과가 아니므로 작업을 수행해야합니다. 그래서 이것은 당신이 사용하는 스플리터의 특별한 "특징"이었던 것처럼 보입니다. 실제로 어떤 사람들은 다른 사람들이 자신의 pdf 텍스트를 쉽게 추출 할 수 없기 때문에 이러한 행동을 원합니다. – mkl