我遇到iText问题。其他人说iText仅用于PDF创作吗?它无法从PDF中读取或提取文本。真的吗?
如果确实如此,我可以选择从PDF文件中提取文本并将其保存在变量上或在Android设备中显示其他选项吗?
如果iText能够从PDF中提取文本,那么如何?
答案 0 :(得分:3)
iText可以从PDF中提取文本。虽然它确实起源于创建新的和操纵现有PDF的工具,但近年来它在提取文本方面也变得越来越好。这显然意味着您应该使用当前的iText版本(5.3.x)进行文本提取。
iText主开发人员Bruno Lowagie撰写的“iText in Action,第二版”一书解释了第15章中基本的iText文本提取,该章的样本可在iText Sourceforge SVN存储库中找到,参见Samples for chapter 15。一个很好的起点是ExtractPageContentSorted2,它提取整页的文本。
如果您有特殊要求,可以使用ExtractPageContentSorted1作为明确定义文本提取策略的起点;根据您的要求,您将需要自己的创业精神。如果您只想要来自特定区域的文字,请查看ExtractPageContentArea。
要真正微调iText的文本提取功能,您应该查看itext-question邮件列表存档(例如at nabble.com),因为最近iText文本提取API已扩展为其他用例。
答案 1 :(得分:0)
Use below code to extract text from pdf :
String pat = data.getData().getPath();
File f = new File(pat);
//f is file path of pdf file
read = new PdfReader(new FileInputStream(f));
parser = new PdfReaderContentParser(read);
strw = new StringWriter();
stretegy = parser.processContent(j, new SimpleTextExtractionStrategy());
strw.write(stretegy.getResultantText());
String da = strw.toString();
//set extracted text from pdf file
//to Edit-text
edt1.setText(da);