翻譯|使用教程|編輯:李顯亮|2020-12-09 10:54:40.587|閱讀 690 次
概述:在本文中,將學習如何使用Java無縫地從PDF文檔中提取文本。在各種情況下,例如文本分析,信息檢索,文檔解析等,文本提取都可能有用。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
由于PDF是使用最廣泛的數字文檔之一,因此從PDF文檔提取文本的用例數量更多。在本文中,將學習如何使用Java無縫地從PDF文檔中提取文本。在各種情況下,例如文本分析,信息檢索,文檔解析等,文本提取都可能有用。
目前,Java版Aspose.PDF升級到v20.11版,感興趣的朋友可點擊下方按鈕下載最新版。(安裝包僅提供部分功能,并設置限制,如需試用完整功能請)
以下是使用Aspose.PDF for Java從PDF文檔提取文本的步驟。
以下代碼示例顯示了如何使用Java從PDF中提取文本。
// Open document Document pdfDocument = new Document("input.pdf"); // Create TextAbsorber object to extract text TextAbsorber textAbsorber = new TextAbsorber(); // Accept the absorber for all the pages pdfDocument.getPages().accept(textAbsorber); // Get the extracted text String extractedText = textAbsorber.getText(); // Create a writer and open the file java.io.FileWriter writer = new java.io.FileWriter(new java.io.File("Extracted_text.txt")); writer.write(extractedText); // Write a line of text to the file tw.WriteLine(extractedText); // Close the stream writer.close();
還可以使用以下步驟從PDF文檔的特定頁面提取文本。
下面的代碼示例演示如何使用Java從PDF的特定頁面提取文本。
// open document Document pdfDocument = new Document("input.pdf"); // create text device TextDevice textDevice = new TextDevice(); // set text extraction options - set text extraction mode (Raw or Pure) TextExtractionOptions textExtOptions = new TextExtractionOptions(TextExtractionOptions.TextFormattingMode.Raw); textDevice.setExtractionOptions(textExtOptions); // get the text from first page of PDF and save it to file format textDevice.process(pdfDocument.getPages().get_Item(1), "ExtractedText.txt");
也可以從PDF的頁面特定區域提取文本。為此,您可以定義一個矩形以覆蓋需要從中提取文本的區域。以下是從頁面區域提取文本的步驟。
以下代碼示例顯示了如何從Java中的特定頁面區域提取文本。
// open document Document doc = new Document("page_0001.pdf"); // create TextAbsorber object to extract text TextAbsorber absorber = new TextAbsorber(); absorber.getTextSearchOptions().setLimitToPageBounds(true); absorber.getTextSearchOptions().setRectangle(new Rectangle(100, 200, 250, 350)); // accept the absorber for first page doc.getPages().get_Item(1).accept(absorber); // get the extracted text String extractedText = absorber.getText(); // create a writer and open the file BufferedWriter writer = new BufferedWriter(new FileWriter(new java.io.File("ExtractedText.txt"))); // write extracted contents writer.write(extractedText); // Close writer writer.close();
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn