我們經常得到尺寸不符合我們要求的圖像,因此,我們必須相應地調整它們的大小。在本文中,您將了解如何在 .NET 應用程序中使用 C# 調整圖像大小。此外,借助 C# 代碼示例,我們將演示如何調整光柵和矢量圖像的大小。
用於調整圖像大小的 C# API - 免費下載
調整圖像大小。我們將使用 Aspose.Imaging for .NET。它是一個強大的圖像處理 API,可以處理各種類型的光柵和矢量圖像。您可以下載 API 的 DLL 或通過 NuGet 安裝它。
PM> Install-Package Aspose.Imaging
在 C# 中調整光柵圖像的大小
有兩種調整光柵圖像(PNG、GIF、JPEG 等)大小的方法:簡單調整大小和使用調整類型調整大小。在簡單的調整大小中,通過提供高度和寬度來調整圖像的大小。而第二種方法使用不同的調整大小技術。以下部分演示如何使用上述每種方法調整圖像大小。
C# 簡單圖像調整大小
以下是在 C# 中調整圖像大小的步驟。
- 首先,使用 Image 類加載圖像文件。
- 然後,通過調用 Image.Resize(Int32, Int32) 方法調整圖像大小。
- 最後,使用 Image.Save(string) 方法保存調整後的圖像。
以下代碼示例顯示瞭如何在 .NET 應用程序中調整圖像的大小。
// 載入圖片
using (Image image = Image.Load("aspose-logo.jpg"))
{
// 調整圖像大小並保存調整後的圖像
image.Resize(300, 300);
image.Save("SimpleResizing_out.jpg");
}
C# 使用調整類型調整圖像大小
ResizeType 枚舉用於指定您可以根據需要使用的調整大小技術。 此處 提供了受支持的大小調整類型的完整列表。以下是使用特定調整大小技術調整圖像大小的步驟。
- 首先,使用 Image 類加載圖像。
- 然後,通過調用 Image.Resize(Int32, Int32, ResizeType) 方法調整圖像大小。
- 最後,使用 Image.Save(string) 方法保存調整後的圖像。
以下代碼示例使用特定的調整大小技術調整圖像大小。
// 載入圖片
using (Image image = Image.Load("aspose-logo.jpg"))
{
// 調整圖像大小並保存調整後的圖像
image.Resize(300, 300, ResizeType.LanczosResample);
image.Save("SimpleResizing_out.jpg");
}
在 C# 中按比例調整圖像大小
通過指定高度和寬度來調整圖像大小可能會導致圖像縮小或縮放。因此,您必須手動計算縱橫比。但是,縱橫比的任何錯誤計算都可能導致圖像被拉伸。為避免此類問題,您可以使用比例調整大小。以下是實現此目的的步驟。
- 首先,使用 Image 類加載圖像文件。
- 然後,使用 Image.CacheData() 方法緩存圖像數據。
- 指定圖像的新高度和寬度。
- 使用 Image.ResizeWidthProportionally(Int32) 和 Image.ResizeHeightProportionally(Int32) 方法計算比例值。
- 最後,使用 Image.Save(string) 方法保存調整後的圖像。
如果您想在按比例調整圖像大小時使用任何特定的調整大小類型,請使用重載方法 Image.ResizeWidthProportionally(Int32, ResizeType) 和 Image.ResizeHeightProportionally(Int32, ResizeType)。
以下代碼示例顯示如何使用 C# 按比例調整圖像大小。
// 載入圖片
using (Image image = Image.Load("aspose-logo.png"))
{
// 緩存圖像數據
if (!image.IsCached)
{
image.CacheData();
}
// 指定寬度和高度
int newWidth = image.Width / 2;
image.ResizeWidthProportionally(newWidth);
int newHeight = image.Height / 2;
image.ResizeHeightProportionally(newHeight);
// 保存圖片
image.Save("ResizeImageProportionally_out.png");
}
在 C# 中調整矢量圖像的大小
Aspose.Imaging for .NET 還允許您調整矢量圖像的大小並將它們保存為光柵圖像格式。以下代碼示例展示瞭如何調整 SVG 圖像的大小並將輸出保存為 PNG 格式。
// 載入圖片
using (Image image = Image.Load("image.svg"))
{
// 將圖像調整為 PNG
image.Resize(image.Width * 10,image.Height * 15);
image.Save("Logotype_10_15.png", new PngOptions()
{
VectorRasterizationOptions = new SvgRasterizationOptions()
});
}
C# Image Resizing API - 獲取免費許可證
您可以獲得免費的臨時許可證 調整圖像大小而不受評估限制。
結論
在本文中,您學習瞭如何使用 C# 以編程方式調整圖像大小。此外,代碼示例還演示瞭如何執行簡單的圖像大小調整或使用特定類型調整大小。我們還介紹瞭如何在調整圖像大小時避免手動計算縱橫比。此外,最後還討論了矢量圖像的大小調整。此外,您可以使用 文檔 探索有關 .NET 圖像處理 API 的更多信息。此外,您還可以從 GitHub 下載完整的源代碼示例包。如有任何疑問,您可以在我們的 論壇 上聯繫我們。