在將 PDF 文檔嵌入 Web 應用程序時,您可能經常需要生成縮略圖。此外,創建 PDF 查看器時需要頁面的縮略圖。對於此類情況,本文介紹瞭如何在 C# .NET 中以編程方式生成 PDF 文件的縮略圖。我們將明確介紹如何創建特定頁面或 PDF 文件中所有頁面的縮略圖。
用於生成 PDF 縮略圖的 C# .NET API
Aspose.PDF for .NET 是一個 C# 類庫,可讓您在 .NET 應用程序中創建和操作 PDF 文檔。使用 API,您可以非常輕鬆地執行基本和高級 PDF 自動化操作。我們將使用此 API 生成 PDF 文件的縮略圖。 API 可以下載為 DLL 或通過 NuGet 安裝。
PM> Install-Package Aspose.Pdf
在 C# .NET 中生成 PDF 文件的縮略圖
通常,您必須為 PDF 文檔生成單個縮略圖。縮略圖頁面可以是封面或您選擇的任何其他頁面。以下是在 C# 中生成所需 PDF 頁面縮略圖的步驟。
- 使用 Document 類加載 PDF 文件。
- 從 Document.Pages 集合中獲取所需頁面的引用。
- 為圖像文件創建一個新的 FileStream。
- 創建 Resolution 類的實例以設置縮略圖圖像的分辨率。
- 實例化 JpegDevice 並設置圖像的高度、寬度、分辨率和質量。
- 使用 JpegDevice.Process(Page, FileStream) 方法生成縮略圖。
- 關閉文件流。
以下代碼示例顯示瞭如何在 C# 中生成 PDF 文件的縮略圖。
// 打開文檔
Document pdfDocument = new Document("file.pdf");
int pageIndex = 0;
// 從集合中獲取所需索引的頁面
var page = pdfDocument.Pages[pageIndex];
// 為圖像文件創建流
using (FileStream imageStream = new FileStream("Thumbanils_" + page.Number + ".jpg", FileMode.Create))
{
// 創建分辨率對象
Resolution resolution = new Resolution(300);
// 創建 JpegDevice 實例並設置圖像的高度、寬度、分辨率和質量
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// 轉換特定頁面並將圖像保存到流
jpegDevice.Process(page, imageStream);
// 關閉流
imageStream.Close();
}
在 C# 中生成 PDF 中所有頁面的縮略圖
下面是在C#中為PDF中的所有頁面生成縮略圖的步驟。
- 使用 Document 類加載 PDF 文件。
- 使用 Document.Pages 集合遍歷 PDF 中的所有頁面。
- 在每次迭代中,執行以下操作:
- 為圖像文件創建一個新的 FileStream。
- 創建 Resolution 類的實例以設置縮略圖圖像的分辨率。
- 實例化 JpegDevice 並設置圖像的高度、寬度、分辨率和質量。
- 使用 JpegDevice.Process(Page, FileStream) 方法生成縮略圖。
- 關閉文件流。
以下代碼示例顯示瞭如何為 PDF 中的所有頁面生成縮略圖。
// 打開文檔
Document pdfDocument = new Document("file.pdf");
// 循環瀏覽頁面
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
// 為每個圖像創建流
using (FileStream imageStream = new FileStream("Thumbanils_" + pageCount + ".jpg", FileMode.Create))
{
// 創建分辨率對象
Resolution resolution = new Resolution(300);
// 創建 JpegDevice 實例並設置圖像的高度、寬度、分辨率和質量
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// 轉換特定頁面並將圖像保存到流
jpegDevice.Process(pdfDocument.Pages[pageCount], imageStream);
// 關閉流
imageStream.Close();
}
}
獲得免費許可證
您可以獲得免費的臨時許可證,以便在沒有評估限制的情況下使用 Aspose.PDF for .NET。
結論
在本文中,您了解瞭如何使用 C# 為 PDF 文件生成縮略圖。您已經了解瞭如何生成特定頁面或 PDF 文件中所有頁面的縮略圖。此外,您可以使用 文檔 探索有關 C# PDF API 的更多信息。如果您有任何問題或疑問,可以通過我們的 論壇 與我們聯繫。