使用 C++ 拆分 PDF 文件

PDF 是一種用於在互聯網上共享文檔的標準格式。其全球支持和一致的佈局使其成為此類場景的理想選擇。但在某些情況下,共享完整的 PDF 文件可能不是理想或合適的選擇。對於此類情況,您可以根據需要拆分 PDF 文件。您可以手動執行此操作,但這可能會證明效率較低且耗時。或者,您可以以編程方式拆分 PDF 文檔。在本文中,您將學習如何使用 C++ 拆分 PDF 文件。

用於拆分 PDF 文件的 C++ API

Aspose.PDF for C++ 是一個 C++ 庫,允許您創建、閱讀和更新 PDF 文檔。此外,API 支持將 PDF 文件拆分為多個文檔。您可以通過 NuGet 安裝 API 或直接從 下載 部分下載。

PM> Install-Package Aspose.PDF.Cpp

使用 C++ 拆分 PDF 文件

Aspose.PDF for C++ 允許您將 PDF 文件的每一頁保存為單獨的 PDF 文檔。以下是使用 C++ 實現此目的的步驟。

以下是使用 C++ 拆分 PDF 文件的示例代碼。

// 加載PDF文件
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// 頁面計數器
int pageCount = 1;

// 循環遍歷所有頁面
for (auto page : pdfDocument->get_Pages())
{
	// 創建新文檔
	auto newDoc = MakeObject<Document>();

	// 向文檔添加頁面
	newDoc->get_Pages()->Add(page);

	// 另存為 PDF
	newDoc->Save(u"OutputDirectory\\Sample_Page_" + System::Convert::ToString(pageCount) + u"_out.pdf");
	pageCount++;
}

使用 C++ 拆分選定的 PDF 頁面

您可以指定不同的條件來拆分 PDF 文件,而不是單獨保存每個頁面。以下是使用 C++ 拆分所選 PDF 頁面的步驟。

以下是使用 C++ 拆分特定 PDF 頁面的示例代碼。

// 加載PDF文件
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// 創建新文檔
auto newDoc = MakeObject<Document>();

// 頁面計數器
int pageCount = 1;

// 循環遍歷所有頁面
for (auto page : pdfDocument->get_Pages())
{
	// 只獲取偶數頁
	if (pageCount % 2 == 0)
	{
		// 向文檔添加頁面
		newDoc->get_Pages()->Add(page);
	}
	pageCount++;
}

// 另存為 PDF
newDoc->Save(u"OutputDirectory\\Sample_Even_Pages_out.pdf");

獲得免費許可證

您可以通過申請 免費的臨時許可證 來試用沒有評估限制的 API。

結論

在本文中,您學習瞭如何使用 C++ 將 PDF 文件拆分為單獨的頁面。此外,您還學習瞭如何使用自定義條件來自定義 PDF 文件的拆分。 Aspose.PDF for C++ 是一個龐大的庫,具有許多用於處理 PDF 文件的附加功能。您可以使用 官方文檔 詳細探索 API。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。

也可以看看