圖像壓縮 是一種流行的減小圖像尺寸的方法。它可以讓您最大限度地減少分別存儲和傳輸圖像所需的空間和時間。可以使用各種壓縮技術以不降低圖像質量的方式壓縮圖像。據此,這篇文章為您提供了一些使用 C# 以編程方式壓縮 PNG、JPEG 和 TIFF 圖像的簡單方法。
C# 圖像壓縮 API - 免費下載
Aspose.Imaging for .NET 是一個功能強大的圖像處理 API,可讓您在 .NET 應用程序中處理流行的圖像格式。此外,API 允許您對圖像應用不同類型的壓縮,包括 PNG、JPEG 和 TIFF。為了使用 API,您可以 下載 它的 DLL 或使用 NuGet 安裝它。
Install-Package Aspose.Imaging
在 C# 中壓縮 PNG 圖像
對於 PNG 圖像,您可以將壓縮級別設置為 0 到 9,其中 9 是最大壓縮,0 是存儲模式。以下是使用 Aspose.Imaging for .NET 壓縮 PNG 圖像的步驟。
- 使用 Image 類加載圖像。
- 創建 PngOptions 類的對象。
- 使用 PngOptions.CompressionLevel 屬性設置壓縮級別。
- 使用 Image.Save(String, PngOptions) 方法保存圖像。
以下代碼示例展示瞭如何使用 C# 壓縮 PNG 圖像。
// 文檔目錄的路徑。
string dataDir = RunExamples.GetDataDir_PNG();
// 從文件(或流)加載圖像
using (Image image = Image.Load(dataDir + "aspose_logo.png"))
{
// 遍歷可能的 CompressionLevel 範圍
for (int i = 0; i <= 9; i++)
{
// 為每個生成的 PNG 創建一個 PngOptions 實例,設置 CompressionLevel 並將結果保存在磁盤上
PngOptions options = new PngOptions();
options.CompressionLevel = i;
image.Save(i + "_out.png", options);
}
}
在 C# 中壓縮 JPEG 圖像
為了處理JPEG圖像,Aspose.Imaging for .NET提供了JpegOptions類,它為JPEG圖像提供了以下壓縮類型。
- 基線
- 進步
- 無損
- JpegLs
以下是使用上述壓縮類型之一壓縮 JPEG 圖像的步驟。
- 使用 Image 類加載 JPEG 圖像。
- 創建一個 JpegOptions 類的對象。
- 使用 JpegOptions.ColorType 屬性設置顏色模式。
- 使用 JpegOptions.CompressionType 屬性設置壓縮類型。
- 使用 Image.Save(String, JpegOptions) 方法保存圖像。
以下代碼示例展示瞭如何使用 C# 壓縮 JPEG 圖像。
// 文檔目錄的路徑。
string dataDir = RunExamples.GetDataDir_JPEG();
using (var original = Image.Load(dataDir+"ColorGif.gif"))
{
var jpegOptions = new JpegOptions()
{
ColorType = JpegCompressionColorMode.Grayscale,
CompressionType = JpegCompressionMode.Progressive,
};
original.Save("D:/temp/result.jpg", jpegOptions);
}
在 C# 中對 TIFF 圖像應用壓縮
Aspose.Imaging for .NET 為 TIFF 圖像提供了 wide range 壓縮類型,包括 LZW、Packbits、CCIT Fax 3 & 4 等。您可以根據需要選擇合適的類型。以下是壓縮 TIFF 圖像的步驟。
- 使用 Image 類加載 TIFF 圖像。
- 創建 TiffOptions 的對象並使用 TiffExpectedFormat.Default 枚舉值對其進行初始化。
- 為 Tiff 圖像設置 BitsPerSample、Compression、Photometric 模式和 Palette。
- 使用 Image.Save(String, TiffOptions) 方法保存圖像。
以下代碼示例展示瞭如何使用 C# 壓縮 TIFF 圖像。
// 文檔目錄的路徑。
string dataDir = RunExamples.GetDataDir_ModifyingAndConvertingImages();
// 通過文件路徑位置或流加載圖像
Image image = Image.Load(dataDir + "SampleTiff.tiff");
// 為生成的圖像創建一個 TiffOptions 實例
TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
// 設置 BitsPerSample、壓縮、光度模式和灰度調色板
outputSettings.BitsPerSample = new ushort[] { 4 };
outputSettings.Compression = TiffCompressions.Lzw;
outputSettings.Photometric = TiffPhotometrics.Palette;
outputSettings.Palette = ColorPaletteHelper.Create4BitGrayscale(false);
image.Save(dataDir + "SampleTiff_out.tiff", outputSettings);
結論
在本文中,您學習瞭如何使用 C# 壓縮 PNG、JPEG 和 TIFF 圖像。還為 JPEG 和 TIFF 圖像列出了各種支持的壓縮技術。您可以使用 文檔 探索有關 .NET 圖像處理 API 的更多信息。
也可以看看
信息:使用 Aspose JPG to PPT 或 PNG to PPT 轉換器,您可以從簡單的圖像生成 PowerPoint 演示文稿。