將 Excel 轉換為 PDF – 每個工作表一頁,使用 GroupDocs Java
在當今以數據為驅動的環境中,將 Excel 工作簿轉換為 PDF,同時保持每個工作表各自佔一頁——one page per sheet——是一項常見需求。無論您是需要從試算表報告生成 PDF、分享唯讀版本,還是歸檔資料,保留版面配置和格線都很重要。本教學將指導您使用 GroupDocs.Conversion for Java,將 Excel 檔案轉換為 PDF,並啟用 one page per sheet 選項,同時說明如何 show grid lines 以及其他實用設定。
快速解答
- 「one page per sheet」是什麼意思? 每個工作表會在 PDF 中呈現在單獨的頁面上。
- 我可以在 PDF 中顯示格線嗎? 可以,在載入選項中啟用
setShowGridLines(true)。 - 哪個函式庫負責轉換? GroupDocs.Conversion for Java。
- 我需要授權嗎? 免費試用可用於測試;正式環境需購買授權。
- 是否支援批次轉換? 可以,使用相同的 API 迴圈處理多個檔案。
「one page per sheet」轉換是什麼?
one page per sheet 設定告訴轉換器將 Excel 工作簿中的每個工作表視為產生的 PDF 中的單獨頁面。此設定可保持原始工作簿結構完整,並讓讀者更容易瀏覽。
為何使用 GroupDocs.Conversion for Java 從試算表產生 PDF?
- High fidelity – 保留格式、公式與樣式。
- Performance – 為大型工作簿與批次處理進行最佳化。
- Flexibility – 支援顯示格線、設定頁面方向等選項。
- Cross‑platform – 可在任何相容 Java 的環境中執行。
前置條件
- Java Development Kit (JDK) 8 或更高版本。
- GroupDocs.Conversion for Java 函式庫(我們將透過 Maven 加入)。
- 如 IntelliJ IDEA 或 Eclipse 等 IDE。
- 具備 Maven 依賴管理的基本概念(有助但非必需)。
設定 GroupDocs.Conversion for Java
Add the GroupDocs repository and dependency to your pom.xml:
<repositories>
<repository>
<id>groupdocs-repo</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/conversion/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
授權
GroupDocs 提供免費試用與多種授權等級。您可取得臨時授權以進行評估,或購買正式授權以供生產環境使用。
初始化與設定
After adding the dependency, you can verify that the library loads correctly:
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
public class InitializeGroupDocs {
public static void main(String[] args) {
System.out.println("GroupDocs Conversion for Java Initialized.");
}
}
試算表文件的載入選項
如何設定「one page per sheet」與顯示格線
SpreadsheetLoadOptions 類別讓您在轉換前微調工作簿的解讀方式。
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
public class LoadSpreadsheetWithOptions {
public static void run() {
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// Show grid lines in the converted document
loadOptions.setShowGridLines(true);
// Ensure each sheet is on a separate page
loadOptions.setOnePagePerSheet(true);
}
}
setShowGridLines(true)– 在 PDF 中保留格線樣式。setOnePagePerSheet(true)– 啟用主要的 one page per sheet 行為。
將試算表轉換為 PDF
步驟說明的轉換程式碼
With the load options configured, the conversion itself is straightforward:
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
public class ConvertSpreadsheetToPdf {
public static void run(String inputFilePath, String outputFilePath) {
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setShowGridLines(true);
loadOptions.setOnePagePerSheet(true);
Converter converter = new Converter(inputFilePath, () -> loadOptions);
PdfConvertOptions options = new PdfConvertOptions();
converter.convert(outputFilePath, options);
}
}
Converter處理整個轉換流程。PdfConvertOptions讓您指定 PDF 專屬設定(壓縮、影像品質等)。
批次轉換 Excel PDF Java
若要處理多個工作簿,只需遍歷檔案路徑集合,對每個檔案呼叫 ConvertSpreadsheetToPdf.run()。此方法可在最少程式碼變更下支援 batch convert excel pdf 情境。
實務應用
- Automated Report Generation – 將每月財務 Excel 檔案轉換為 PDF 以供發佈。
- Team Collaboration – 分享保留格線的唯讀 PDF,確保所有人看到相同的版面配置。
- Long‑Term Archiving – 將試算表存為 PDF,以防止意外編輯,同時保持視覺完整性。
效能考量
- Memory Management – 轉換大型工作簿時分配足夠的堆積空間。
- Batch Processing – GroupDocs.Conversion 可平行處理多個檔案;請監控 CPU 使用率。
- Load Options Tuning – 停用不必要的功能(例如公式)可縮短處理時間。
常見問題與解決方案
| Issue | Solution |
|---|---|
| Out‑OfMemoryError on large files | 增加 JVM 堆積大小 (-Xmx2g 或更高) 並考慮逐個工作表轉換。 |
| Grid lines not appearing | 確保在建立 Converter 之前呼叫 loadOptions.setShowGridLines(true)。 |
| All sheets merged onto one page | 確認已設定 loadOptions.setOnePagePerSheet(true);較舊的函式庫版本可能需要不同的屬性。 |
常見問答
Q: convert excel pdf java 與 excel pdf conversion java 有何差異?
A: 兩者皆指相同的流程——使用 Java 將 Excel 工作簿轉換為 PDF 檔案。雖然說法不同,但底層的 API 呼叫相同。
Q: 我可以自訂 PDF 的頁面大小或方向嗎?
A: 可以,PdfConvertOptions 提供 setPageSize() 與 setPageOrientation() 等方法以調整輸出。
Q: 是否可以在保留每頁一工作表的版面下隱藏格線?
A: 完全可以。設定 loadOptions.setShowGridLines(false),同時保留 setOnePagePerSheet(true)。
Q: 如何處理受密碼保護的 Excel 檔案?
A: 在建立 Converter 實例時,使用接受含有憑證的 LoadOptions 的重載方法,提供密碼。
Q: GroupDocs 是否支援其他試算表格式(例如 CSV、ODS)?
A: 支援,函式庫可載入並將多種試算表類型轉換為 PDF。
資源
最後更新: 2026-04-10
測試環境: GroupDocs.Conversion 25.2 for Java
作者: GroupDocs