• <menu id="w2i4a"></menu>
  • logo Aspose.PDF使用教程

    文檔首頁>>Aspose.PDF使用教程>>Aspose.PDF功能演示:使用Java從PDF文檔中提取文本

    Aspose.PDF功能演示:使用Java從PDF文檔中提取文本


    由于PDF是使用最廣泛的數(shù)字文檔之一,因此從PDF文檔提取文本的用例數(shù)量更多。在本文中,將學習如何使用Java無縫地從PDF文檔中提取文本。在各種情況下,例如文本分析,信息檢索,文檔解析等,文本提取都可能有用。

    • 使用Java從PDF提取文本
    • 從PDF中的特定頁面提取文本
    • 從PDF中的頁面區(qū)域提取文本

    目前,Java版Aspose.PDF升級到v20.11版,感興趣的朋友可點擊下方按鈕下載最新版。

    點擊下載最新版Aspose.PDF for Java

    使用Java從PDF提取文本

    以下是使用Aspose.PDF for Java從PDF文檔提取文本的步驟。

    • 使用Document類加載PDF文件。
    • 創(chuàng)建一個TextAbsorber類的對象。
    • 接受TextAbsorber使用PDF的所有頁面Document.getPages()接受(TextAbsorber)方法。
    • 使用TextAbsorber.getText()方法從PDF獲取所有文本。
    • 將文本保存到TXT文件中(可選)。

    以下代碼示例顯示了如何使用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();

    使用Java從PDF中的特定頁面提取文本

    還可以使用以下步驟從PDF文檔的特定頁面提取文本。

    • 使用Document類加載PDF文件。
    • 創(chuàng)建TextDevice類的實例。
    • 使用TextExtractionOptions類定義其他選項。
    • 使用TextDevice.setExtractionOptions(TextExtractionOptions)方法設置選項。
    • 使用TextDevice.Process(Page,String)從指定的頁面提取文本。

    下面的代碼示例演示如何使用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的頁面區(qū)域提取文本

    也可以從PDF的頁面特定區(qū)域提取文本。為此,您可以定義一個矩形以覆蓋需要從中提取文本的區(qū)域。以下是從頁面區(qū)域提取文本的步驟。

    • 使用Document類加載PDF文件。
    • 創(chuàng)建一個TextAbsorber類的對象。
    • 將限制設置為頁面綁定,并分別使用TextAbsorber.getTextSearchOptions()。setLimitToPageBounds(true)和TextAbsorber.getTextSearchOptions()。setRectangle(new Rectangle(100,200,250,350))方法創(chuàng)建一個矩形。
    • 接受特定頁面的吸收器。
    • 使用TextAbsorber.getText()方法提取文本。

    以下代碼示例顯示了如何從Java中的特定頁面區(qū)域提取文本。

    // 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();

    還想要更多嗎?您可以點擊閱讀【2020 · Aspose最新資源整合】查找需要的教程資源。如果您有任何疑問或需求,請隨時加入Aspose技術(shù)交流群(761297826),我們很高興為您提供查詢和咨詢。
    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();