使用 GroupDocs.Viewer 在 Java 中將 Word 轉換為帶文字層的圖像

您是否需要在保持文字可選取且可搜尋的情況下 將 Word 轉換為圖像?將 DOCX 渲染為圖像時,往往會失去底層文字,導致無法搜尋與複製貼上。在本教學中,我們將示範如何使用 GroupDocs.Viewer for Java 將 Word 文件渲染為 PNG 圖像 並疊加文字層。此方法不僅 提升文件圖像的清晰度,還 產生可搜尋的圖像,可在網站入口與 CMS 解決方案中完美運作。

使用 GroupDocs.Viewer for Java 將文件渲染為帶文字層的圖像

快速解答

  • 「將 Word 轉換為圖像」是什麼意思? 它會為每一頁建立一個光柵圖像(PNG),同時在隱藏層中保留原始文字。
  • 為什麼要加入文字層? 疊加的文字層使圖像可搜尋且可選取,提升可及性與 SEO。
  • 哪個函式庫負責此功能? GroupDocs.Viewer for Java 內建支援文字抽取與圖像渲染。
  • 我需要授權嗎? 免費試用可用於開發;正式上線需購買授權。
  • 我可以將相同程式碼用於 PDF 嗎? 可以——相同的檢視選項適用於 PDF、DOCX 以及其他多種格式。

什麼是帶文字層的「將 Word 轉換為圖像」?

將 Word 檔案轉換為圖像通常只會產生僅包含像素的點陣圖。啟用 extract text overlay 後,GroupDocs.Viewer 會在每張圖像上方加入隱形文字層,讓瀏覽器與搜尋引擎能讀取內容。

為什麼在此任務中使用 GroupDocs.Viewer?

  • 高品質 PNG 輸出,保留原始版面配置。
  • 自動抽取文字疊層,讓您獲得可搜尋的圖像,無需額外處理。
  • 簡易 API —— 只需幾行 Java 程式碼即可完成整個流程。
  • 廣泛格式支援 —— 相同方法適用於 PDF、PPTX 等多種格式。

前置條件

  • 已安裝並設定 Java Development Kit(JDK)。
  • 用於相依性管理的 Maven。
  • 熟悉 Java 檔案處理與 Maven 專案的基本知識。

設定 GroupDocs.Viewer for Java

安裝資訊

在 Maven 專案的 pom.xml 中加入儲存庫與相依性,即可將 GroupDocs.Viewer 加入專案:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/viewer/java/</url>
   </repository>
</repositories>
<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-viewer</artifactId>
      <version>25.2</version>
   </dependency>
</dependencies>

取得授權

先從下載頁面下載 GroupDocs.Viewer,使用免費試用版進行開發。正式上線時,請購買授權或從臨時授權頁面取得臨時金鑰。

基本初始化與設定

Maven 同步完成後,您即可建立 Viewer 實例——此物件將負責渲染流程。

逐步指南:將 Word 轉換為圖像

步驟 1:定義輸出目錄

首先,告訴 Viewer 要將產生的 PNG 檔案存放於何處。以下程式碼會建立(或重用)名為 YOUR_OUTPUT_DIRECTORY 的資料夾。

Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY");

小技巧: 若希望自動建立資料夾,可使用 Files.createDirectories(outputDirectory);

步驟 2:設定檢視選項(Configure View Options)

接著,設定渲染選項。使用 PngViewOptions 並啟用 setExtractText(true),即可指示 GroupDocs.Viewer 抽取文字疊層,並將其嵌入每張圖像中。

Path pageFilePathFormat = outputDirectory.resolve("page_{0}.png");
PngViewOptions viewOptions = new PngViewOptions(pageFilePathFormat);
viewOptions.setExtractText(true);  // Enable extracting text over the image

步驟 3:渲染文件(Convert Word to Image)

最後,開啟來源 DOCX 並呼叫 viewer.view(viewOptions)try‑with‑resources 區塊可確保 Viewer 實例正確關閉。

try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX")) {
    viewer.view(viewOptions);  // Perform rendering operation
}

程式執行完畢後,Word 文件的每一頁都會以高解析度 PNG 形式呈現,並帶有隱形文字層,隨時可供索引與搜尋。

疑難排解技巧

  • 檔案未找到: 再次確認 SAMPLE_DOCX 的路徑。為保險起見,請使用絕對路徑。
  • 權限問題: 確認 Java 程序有寫入 YOUR_OUTPUT_DIRECTORY 的權限。
  • 版本不匹配: 檢查 pom.xml 中的版本是否與您下載的函式庫相符。

實務應用

  1. 網站入口: 顯示文件預覽,使用者可直接搜尋而無需下載原始檔案。
  2. 內容管理系統: 儲存可搜尋的圖像快照以作為歸檔用途。
  3. 文件歸檔: 保留輕量化的圖像版本,同時仍支援全文搜尋。

效能考量

  • 及時釋放 Viewer 物件(如 try‑with‑resources 所示)。
  • 若重視品質請選擇 PNG;若頻寬受限可改用 JPEG。
  • 當同一文件被重複請求時,快取已渲染的頁面。

常見問題

Q: 如何處理大型文件?
A: 逐頁增量渲染,並在處理完一批後釋放相應的 Viewer 實例,以降低記憶體使用量。

Q: 我可以使用相同方法渲染 PDF 嗎?
A: 可以,GroupDocs.Viewer 支援 PDF,使用相同的 setExtractText(true) 旗標即可產生可搜尋的 PDF 圖像。

Q: 若輸出中看不到文字層該怎麼辦?
A: 確認已設定 viewOptions.setExtractText(true),且輸出資料夾具備寫入權限。

Q: 是否支援其他圖像格式?
A: 除 PNG 外,您也可以透過更換檢視選項類別,使用 JpgViewOptionsBmpViewOptions

Q: 在哪裡可以找到更詳細的 API 文件?
A: 官方文件提供完整的範例與設定說明。

資源


最後更新: 2026-01-10
測試環境: GroupDocs.Viewer 25.2 for Java
作者: GroupDocs