使用 C++ 將 PDF 頁面轉換為 PNG 圖像

PDF 因其一致的佈局而成為共享和打印文檔的流行格式。但是,您可能會發現自己處於想要生成 PDF 文件的封面圖像或將其頁面嵌入網頁的情況。在這種情況下,將 PDF 文件轉換為圖像格式會很有幫助。為此,本文將教您如何使用 C++ 將 PDF 頁面轉換為 PNG 圖像。

用於將 PDF 頁面轉換為 PNG 圖像的 C++ API

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

PM> Install-Package Aspose.PDF.Cpp

使用 C++ 將 PDF 頁面轉換為 PNG 圖像

以下是將 PDF 頁面轉換為 PNG 圖像的步驟。

  • 使用 Document 類加載 PDF 文件。
  • 遍歷 PDF 文件的頁面。
  • 在循環中,為輸出圖像創建 FileStream 類的實例。
  • 創建 Resolution 類的實例。
  • 創建 PngDevice 類的實例。
  • 使用 [進程 (System::SharedPtr頁面,System::SharedPtrSystem::IO::Stream PngDevice類的output)]10方法,保存PDF頁面的圖片。

以下示例代碼演示瞭如何使用 C++ 將 PDF 文件的頁面保存為 PNG 圖像。

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

// 遍歷 PDF 頁面
for (auto page : pdfDocument->get_Pages())
{
	// 創建 FileStream 類的實例
	System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));

	// 創建 Resolution 類的實例
	auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);

	// 創建 PngDevice 類的實例
	auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);

	// 將頁面另存為圖像
	pngDevice->Process(page, imageStream);

	// 關閉流
	imageStream->Close();
}

使用 C++ 將單個 PDF 頁面轉換為 PNG 圖像

以下是將單頁 PDF 文件轉換為 PNG 圖像的步驟。

以下示例代碼顯示瞭如何使用 C++ 將單個 PDF 頁面轉換為 PNG 圖像。

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

// 檢索第一頁
auto page = pdfDocument->get_Pages()->idx_get(1);

// 創建 FileStream 類的實例
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));

// 創建 Resolution 類的實例
auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);

// 創建 PngDevice 類的實例
auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);

// 將頁面另存為圖片
pngDevice->Process(page, imageStream);

// 關閉流
imageStream->Close();

獲得免費許可證

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

結論

在本文中,您學習瞭如何使用 C++ 將 PDF 文件的頁面轉換為 PNG 圖像。您可以將 PDF 文件的所有頁面或選定頁面轉換為 PNG 圖像。 Aspose.PDF for C++ 是一個強大的 API,具有許多用於自動化 PDF 相關工作流程的附加功能。您可以通過訪問 官方文檔 來詳細探索 API。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。

也可以看看