將 Word DOCX 轉換為 PDF

再次歡迎來到文件格式 API 主頁!最近,我寫了幾篇博文來介紹在 .NET(使用 C#)和 Java 應用程序中以編程方式將 Word (DOC/DOCX) 轉換為 PDF 的各種場景。由於這是一個流行和廣泛使用的特性,我想也為 C++ 涵蓋它。因此,在本文中,我將向您展示如何在 C++ 應用程序中將 Word DOC/DOCX 轉換為 PDF。本文介紹了以下 Word 到 PDF 的轉換:

  • C++ 中的簡單 Word DOC/DOCX 到 PDF。
  • DOCX 到具有特定標準的 PDF,即 PDF 1.5、PDF/A-1a 等。
  • 將 DOCX 的選定頁面轉換為 PDF。
  • 在 DOCX 中應用圖像/文本壓縮到 PDF 轉換。

C++ Word 到 PDF 轉換器庫

Aspose.Words for C++ 是一個高級庫,無需 MS Word 即可在 C++ 應用程序中創建和操作 Word 文檔格式。您可以通過 NuGet下載 安裝它,完整的包包含庫文件以及準備運行的源代碼示例。

在 C++ 中將 Word DOC/DOCX 轉換為 PDF

使用 Aspose.Words for C++ 將 Word 文檔轉換為 PDF 非常簡單。以下是將 DOC/DOCX 文件轉換為 PDF 的步驟。

  • 創建一個 Document 類的對象並使用 Word 文檔的路徑對其進行初始化。
  • 調用 Document->Save() 方法將文檔保存為 PDF。

以下代碼示例顯示瞭如何在 C++ 中將 DOCX 轉換為 PDF。

// 從磁盤加載文檔。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 設置輸出PDF路徑
System::String outputPath =  u"DOCX-to-PDF.pdf";
// 將 DOCX 轉換為 PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";

輸入Word文檔

DOCX 到 PDF C++

轉換後的 PDF 文檔

C++ 中的 DOC 到 PDF

在 C++ 中將 DOCX 轉換為 PDF/A 或其他 PDF 標準

PDF 格式支持各種 PDF 標準,包括 PDF/A、PDF/E 等。當您需要將 Word 文件轉換為特定標準(如 PDF/A-1a)時,可能會有這種情況。在這種情況下,Aspose.Words for C++ 允許您為轉換後的 PDF 設置所需的 PDF 標準。以下是在Word轉PDF中設置PDF標準的步驟:

以下代碼示例顯示瞭如何將 Word DOCX 轉換為符合 PDF/A-1a 標準的 PDF。

// 從磁盤加載文檔。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 設置輸出PDF路徑
System::String outputPath =  u"DOCX-to-PDFA.pdf";
// 設置 PDF 選項
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// 將文檔保存為 PDF 格式。
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";

在 C++ 中將 Word 的選定頁面轉換為 PDF

您也可以只轉換選定的頁面,而不是將整個 Word 轉換為 PDF。以下是僅將所需的 Word 頁面轉換為 PDF 的步驟:

  • 使用 Document 類加載 Word 文檔。
  • 使用 PdfSaveOptions->setPageIndex() 方法設置起始頁的索引。
  • 使用 PdfSaveOptions->setPageCount() 方法設置要轉換的頁數。
  • 使用 Document->Save() 方法將文檔保存為 PDF。

以下代碼示例顯示瞭如何在 C++ 中將選定的 DOCX 頁面轉換為 PDF。

// 從磁盤加載文檔。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 設置輸出PDF路徑
System::String outputPath =  u"DOCX-to-PDF.pdf";
// 設置 PDF 選項
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// 將文檔保存為 PDF 格式。
doc->Save(outputPath, options);

將 DOCX 中的圖像/文本壓縮應用於 PDF 轉換

您還可以壓縮生成的 PDF 文檔以減小其大小。 Aspose.Words for C++ 允許您分別使用 PdfSaveOptions->setTextCompression()PdfSaveOptions->setImageCompression() 方法應用文本和圖像壓縮。以下代碼示例顯示了在 C++ 中將 DOCX 轉換為 PDF 時如何應用壓縮。

// 從磁盤加載文檔。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 設置輸出PDF路徑
System::String outputPath =  u"DOCX-to-PDF.pdf";
// 設置 PDF 選項
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// 設置 JPEG 質量
options->set_JpegQuality(100);
// 將文檔保存為 PDF 格式
doc->Save(outputPath, options);

了解有關 Aspose.Words for C++ 的更多信息

您可以使用 文檔 探索更多關於 Aspose.Words for C++ 的信息。如果您發現任何令人困惑的地方,請隨時通過我們的 論壇 告訴我們。

也可以看看