使用 IRONPDF FOR NODE.JS

如何在Node.js中將PDF轉換為文本

發佈 2024年1月4日
分享:

介紹

在 Node.js 中進行 PDF 到文本的轉換是許多應用程式中的常見任務,尤其是在處理資料分析、內容管理系統或簡單的轉換工具時。 在 Node.js 環境中和IronPDF 庫,開發人員可以輕鬆地將 PDF 文件轉換為可用的文本數據. 本教程旨在指導初學者通過設置 Node.js 項目來使用 IronPDF 從 PDF 頁面文件中提取文本,重點關注安裝詳情、PDF 解析實作、錯誤處理和實際應用等關鍵方面。

如何在 NodeJS 中將 PDF 轉換為文本

  1. 在您的 IDE 中創建一個 Node.js 應用程式。

  2. 使用 npm 安裝 PDF 函式庫。

  3. 將 PDF 頁面載入應用程式。

  4. 使用 extractText 方法提取文本。

  5. 使用提取的文本進行處理並返回數據。

先決條件

在開始這段旅程之前,確保您擁有以下物品:

*Node.js已安裝在您的機器上。

  • 對 JavaScript 的基本理解。
  • 用於測試執行提取過程的 PDF 文件。

設置您的 Node.js 專案

步驟 1:初始化您的 Node.js 應用程式

為您的項目創建一個新的目錄並啟動一個 Node.js 應用程式:

mkdir pdf-to-text-node
cd pdf-to-text-node
npm init -y

步驟 2:安裝 IronPDF

使用 npm 安裝 IronPDF:

npm install ironpdf

使用 IronPDF 實現 PDF 到文本轉換

步驟 1:匯入必要的模組

import { PdfDocument } from "@ironpdf/ironpdf";
import { IronPdfGlobalConfig } from "@ironpdf/ironpdf";
import fs from "fs";
JAVASCRIPT

在第一步中,您需要匯入必要的模組。 PdfDocumentIronPdfGlobalConfig 是從 @ironpdf/ironpdf 套件中導入的,分別對於處理 PDF 文件和配置 IronPDF 至關重要。 核心 Node.js 模塊 fs 模塊也被引入,用於處理文件系統操作。

步驟 2:設定非同步函式

(async function createPDFs() {
  // ...
})();
JAVASCRIPT

在此,定義了一個名為createPDFs的非同步匿名函數並立即調用。 這個設置允許在函數中使用await,以便處理異步操作,這在處理文件I/O和像IronPDF這樣的外部庫時很常見。

步驟 3:應用許可密鑰

const IronPdfConfig = {
  licenseKey: "Your-License-Key",
};
IronPdfGlobalConfig.setConfig(IronPdfConfig);
JAVASCRIPT

在此步驟中,您將為 IronPDF 創建一個配置對象,包括許可證密鑰,並使用 IronPdfGlobalConfig.setConfig 應用此配置。 這對啟用IronPDF的所有功能至關重要,特別是當您使用的是授權版本時。

步驟 4: 加載 PDF 文件

const pdf = await PdfDocument.fromFile("report.pdf");
JAVASCRIPT

在此步驟中,程式碼正確地使用 PdfDocument 類的 fromFile 方法來載入現有的 PDF 文件。 這是一個非同步操作,因此使用 await。 透過指定您的 PDF 文件路徑(在這種情況下,"old-report.pdf"),pdf 變數成為您的 PDF 文件的表示,已完全加載並準備好提取文本。 這個步驟很關鍵,因為這是解析 PDF 文件並為您希望執行的任何操作(如提取文本)做好準備的地方。

步驟五:從 PDF 提取文字

const text = await pdf.extractText();
JAVASCRIPT

在這裡,extractText 方法被呼叫在 pdf 物件上。 這個非同步操作會從加載的 PDF 文件中提取所有文本,並將其存儲在 text 變數中。

第六步:處理提取的文本

const wordCount = text.split(/\s+/).length;
console.log("Word Count:", wordCount);
JAVASCRIPT

在此步驟中,提取的文本將被處理以計算單詞的數量。 這是透過使用匹配一個或多個空白字元的正則表達式將文字字串分割成一個字元陣列來實現的,然後計算得到的陣列的長度。

第 7 步:將提取的文本保存到文件

fs.writeFileSync("extracted_text.txt", text);
JAVASCRIPT

這行更正的代碼使用 fs 模塊的 writeFileSync 方法同步地將提取的文本寫入文件。

第8步:錯誤處理

} catch (error) {
  console.error("An error occurred:", error); //log error
}
JAVASCRIPT

最後,這段程式碼包含一個 try-catch 區塊來處理錯誤。 如果 try 區塊中的任何非同步操作失敗,catch 區塊將捕捉錯誤,並將訊息記錄到控制台。 這對於除錯和確保您的應用程序能夠優雅地處理意外問題來說非常重要。

完整程式碼

以下是完整的程式碼,包含我們討論過的所有步驟,用於在 Node.js 環境中使用 IronPDF 從 PDF 文件中提取文本:

import { PdfDocument } from "@ironpdf/ironpdf";
import { IronPdfGlobalConfig } from "@ironpdf/ironpdf";
import fs from "fs";
(async function createPDFs() {
  try {
    // Input the license key
    const IronPdfConfig = {
      licenseKey: "Your-License-Key",
    };
    // Set the config with the license key
    IronPdfGlobalConfig.setConfig(IronPdfConfig);
    // Import existing PDF document
    const pdf = await PdfDocument.fromFile("old-report.pdf");
    // Get all text to put in a search index
    const text = await pdf.extractText();
    // Process the extracted text
    // Example: Count words
    const wordCount = text.split(/\s+/).length;
    console.log("Word Count:", wordCount);
    // Save the extracted text to a text file
    fs.writeFileSync("extracted_text.txt", text);
    console.log("Extracted text saved to extracted_text.txt");
  } catch (error) {
    // Handle errors here
    console.error("An error occurred:", error);
  }
})();
JAVASCRIPT

此腳本包括從 PDF 文件中提取文本所需的所有必要組件:設置帶許可密鑰的 IronPDF,載入 PDF 文件,提取文本,進行簡單的文本分析(字數在這種情況下)以及將提取的文本保存到檔案中。此程式碼包裝在一個非同步函式中,以處理 Node.js 中檔案操作和 PDF 處理的非同步性。

分析輸出:PDF 和提取的文本

一旦您執行了這個腳本,您最終將獲得兩個關鍵組成部分進行分析:原始 PDF 文件和包含提取文字的文字文件。 本節將引導您了解和評估腳本的輸出結果。

原始 PDF 文件

您選擇作為此過程開始點的 PDF 文件,在本例中名為「old-report.pdf」。 PDF 文檔的複雜性和內容可以有很大的不同。 它們可能包含簡單明了的文本,或者可能充滿圖像、表格和多種文本格式。 您的 PDF 結構和複雜性將直接影響提取過程。

如何在 Node.js 中將 PDF 轉換為文本:圖 1 - 原始 PDF

提取的文字檔案

運行腳本後,將創建一個名為 "extracted_text.txt" 的新文本文件。 此文件包含從 PDF 文件提取的所有文本。

如何在 Node.js 中將 PDF 轉換為文字:圖 2 - 提取的文字

這是控制台上的輸出:

如何在 Node.js 中將 PDF 轉換為文本:圖 3 - 控制台輸出

應用實例與使用案例

資料挖掘和分析

從 PDF 提取文本在資料挖掘和分析中特別有用。 無論是提取財務報告、研究論文或其他PDF文件,將PDF轉換為文本的能力對於數據分析任務至關重要。

內容管理系統

在內容管理系統中,您經常需要處理各種檔案格式。 IronPDF 可以成為管理、存檔和檢索儲存為 PDF 格式內容的系統中的關鍵組件。

結論

如何在 Node.js 中將 PDF 轉換為文字:圖 4 - 授權

本綜合指南已引導您完成使用 IronPDF 設定 Node.js 專案以從 PDF 文件中提取文本的過程。 從處理基本的文字提取到深入更複雜的功能,例如文字對象提取和性能優化,您現在具備將高效的 PDF 文字提取實施在您的 Node.js 應用程式中的知識。

請記住,旅程不會在此結束。 PDF 處理和文本提取領域廣闊,還有許多功能和技術可供探索。 擁抱挑戰,繼續在這個令人興奮的軟體開發領域提升您的技能。

值得注意的是,IronPDF 提供了一个用戶免費試用. 對於那些希望在專業環境中整合IronPDF的人,有多種授權選項可供選擇。

< 上一頁
如何在 Node.js 中編輯 PDF 文件
下一個 >
如何在 Node.js 中分割 PDF 檔案

準備開始了嗎? 版本: 2024.12 剛剛發布

免費 npm 安裝 查看許可證 >