最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用C#壓縮PNG、JPEG和TIFF圖像的方法

 更新時(shí)間:2024年12月10日 09:52:58   作者:坐井觀老天  
圖像壓縮是一種常用的減小圖像大小的方法,它可以讓您分別最小化存儲(chǔ)和傳輸圖像所需的空間和時(shí)間,有各種壓縮技術(shù)可用來(lái)壓縮圖像,而不會(huì)降低圖像的質(zhì)量,根據(jù)這一點(diǎn),這篇文章為您提供了一些使用 C# 以編程方式壓縮PNG、JPEG和TIFF圖像的簡(jiǎn)單方法

C# 圖像壓縮 API - 免費(fèi)下載

Aspose.Imaging for .NET是一款功能強(qiáng)大的圖像處理 API,可讓您在 .NET 應(yīng)用程序中處理常見(jiàn)的圖像格式。此外,該 API 還允許您對(duì)圖像應(yīng)用不同類型的壓縮,包括 PNG、JPEG 和 TIFF。要使用該 API,您可以下載其 DLL 或使用NuGet安裝它。

Install-Package Aspose.Imaging

在 C# 中壓縮 PNG 圖像

對(duì)于 PNG 圖像,您可以將壓縮級(jí)別設(shè)置為 0 到 9,其中 9 是最大壓縮,0 是存儲(chǔ)模式。以下是使用 Aspose.Imaging for .NET 壓縮 PNG 圖像的步驟。

  • 使用Image類加載圖像。
  • 創(chuàng)建PngOptions類的對(duì)象。
  • 使用PngOptions.CompressionLevel屬性設(shè)置壓縮級(jí)別。
  • 使用Image.Save(String, PngOptions)方法保存圖像。

以下代碼示例展示如何使用 C# 壓縮 PNG 圖像。

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_PNG();
 
// Load an image from file (or stream)
using (Image image = Image.Load(dataDir + "aspose_logo.png"))
{
    // Loop over possible CompressionLevel range
    for (int i = 0; i <= 9; i++)
    {
        // Create an instance of PngOptions for each resultant PNG, Set CompressionLevel and  Save result on disk
        PngOptions options = new PngOptions();
        options.CompressionLevel = i;
        image.Save(i + "_out.png", options);
    }
}

在 C# 中壓縮 JPEG 圖像

為了處理 JPEG 圖像,Aspose.Imaging for .NET 提供了JpegOptions類,該類為 JPEG 圖像提供以下壓縮類型。

  • 基線
  • 進(jìn)步
  • 無(wú)損
  • JPEG格式

以下是使用上述壓縮類型之一壓縮 JPEG 圖像的步驟。

  • 使用Image類加載 JPEG 圖像。
  • 創(chuàng)建JpegOptions類的對(duì)象。
  • 使用JpegOptions.ColorType屬性設(shè)置顏色模式。
  • 使用JpegOptions.CompressionType屬性設(shè)置壓縮類型。
  • 使用Image.Save(String, JpegOptions)方法保存圖像。

以下代碼示例展示如何使用 C# 壓縮 JPEG 圖像。

// The path to the documents directory.
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# 中對(duì) TIFF 圖像應(yīng)用壓縮

Aspose.Imaging for .NET 為 TIFF 圖像提供了多種壓縮類型,包括 LZW、Packbits、CCIT Fax 3 & 4 等。您可以根據(jù)需要選擇適當(dāng)?shù)念愋?。以下是壓縮 TIFF 圖像的步驟。

Aspose.Imaging for .NET 為 TIFF 圖像提供了多種壓縮類型,包括 LZW、Packbits、CCIT Fax 3 & 4 等。您可以根據(jù)需要選擇適當(dāng)?shù)念愋?。以下是壓縮 TIFF 圖像的步驟。

  • 使用Image類加載 TIFF 圖像。
  • 創(chuàng)建一個(gè)TiffOptions對(duì)象并用TiffExpectedFormat.Default枚舉值初始化它。
  • 為 Tiff 圖像設(shè)置BitsPerSample、壓縮、光度測(cè)定模式和調(diào)色板。
  • 使用Image.Save(String, TiffOptions)方法保存圖像。

以下代碼示例展示如何使用 C# 壓縮 TIFF 圖像。

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_ModifyingAndConvertingImages();
 
// Load an image through file path location or stream
Image image = Image.Load(dataDir + "SampleTiff.tiff");
 
// Create an instance of TiffOptions for the resultant image
TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
 
// Set BitsPerSample, Compression, Photometric mode and graycale palette
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);

結(jié)論

在本文中,您學(xué)習(xí)了如何使用 C# 壓縮 PNG、JPEG 和 TIFF 圖像。還列出了 JPEG 和 TIFF 圖像支持的各種壓縮技術(shù)。您可以使用文檔了解有關(guān) .NET 圖像處理 API 的更多信息。

以上就是使用C#壓縮PNG、JPEG和TIFF圖像的方法的詳細(xì)內(nèi)容,更多關(guān)于C#壓縮PNG、JPEG和TIFF的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 使用C#代碼在Word文檔中插入列表的操作方法

    使用C#代碼在Word文檔中插入列表的操作方法

    列表在 Word 文檔中用于概述、排列和強(qiáng)調(diào)文本,使用戶能夠輕松掃描和理解一系列項(xiàng)目,在本文中,您將學(xué)習(xí)如何使用 Spire.Doc for .NET 在 C# 和 VB.NET 中將這些類型的列表插入到 Word 文檔中,需要的朋友可以參考下
    2025-11-11
  • Stream.Write 與 StreamWriter.Write 的不同

    Stream.Write 與 StreamWriter.Write 的不同

    Stream.Write 與 StreamWriter.Write 是我們?cè)谙蛄髦袑憯?shù)據(jù)時(shí),最常用的方法。下面就詳細(xì)講解這兩個(gè)方法。
    2013-04-04
  • C# WPF中實(shí)現(xiàn)圖表生成的五種方式

    C# WPF中實(shí)現(xiàn)圖表生成的五種方式

    在現(xiàn)代應(yīng)用程序中,數(shù)據(jù)可視化是一個(gè)重要的功能,它可以幫助用戶更直觀地理解數(shù)據(jù),在C# WPF中,有多種方式可以生成圖表,以下是五種常見(jiàn)的方法,每種方法都有其獨(dú)特的優(yōu)勢(shì)和局限,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2024-09-09
  • c#異常處理示例分享

    c#異常處理示例分享

    這篇文章主要介紹了c#異常處理示例,需要的朋友可以參考下
    2014-04-04
  • C#實(shí)現(xiàn)較為實(shí)用的SQLhelper

    C#實(shí)現(xiàn)較為實(shí)用的SQLhelper

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)較為實(shí)用SQLhelper的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • C#信號(hào)量用法簡(jiǎn)單示例

    C#信號(hào)量用法簡(jiǎn)單示例

    這篇文章主要介紹了C#信號(hào)量用法,結(jié)合簡(jiǎn)單C#控制臺(tái)應(yīng)用程序形式分析了信號(hào)量的功能、定義、調(diào)用、釋放等操作技巧,需要的朋友可以參考下
    2016-07-07
  • 淺析c# 線程同步

    淺析c# 線程同步

    這篇文章主要介紹了c# 線程同步的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-08-08
  • 利用C#實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng)

    利用C#實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng)

    這篇文章主要介紹了利用C#實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng),完整的介紹了C#實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(chóng)詳細(xì)過(guò)程,感興趣的小伙伴們可以參考一下
    2016-03-03
  • C#數(shù)組學(xué)習(xí)相關(guān)資料整理

    C#數(shù)組學(xué)習(xí)相關(guān)資料整理

    最近開(kāi)始學(xué)習(xí)c#,并有幸接觸到了數(shù)組方便的操作,感覺(jué)確實(shí)不錯(cuò),這里簡(jiǎn)單的整理下c#相關(guān)的學(xué)習(xí)資料,方便大家學(xué)習(xí)
    2012-09-09
  • 在C#中使用適配器Adapter模式和擴(kuò)展方法解決面向?qū)ο笤O(shè)計(jì)問(wèn)題記錄

    在C#中使用適配器Adapter模式和擴(kuò)展方法解決面向?qū)ο笤O(shè)計(jì)問(wèn)題記錄

    在開(kāi)發(fā)基于MonoGame的游戲框架時(shí),面臨SpriteFont和DynamicSpriteFont兼容問(wèn)題,SpriteFont在內(nèi)容管道中編譯確定字號(hào),導(dǎo)致不同字號(hào)需加載多個(gè)字體資源,本文給大家介紹在C#中使用適配器Adapter模式和擴(kuò)展方法解決面向?qū)ο笤O(shè)計(jì)問(wèn)題,感興趣的朋友一起看看吧
    2024-10-10

最新評(píng)論

安国市| 霍林郭勒市| 察雅县| 米脂县| 博罗县| 靖西县| 顺昌县| 克拉玛依市| 和政县| 赣州市| 五寨县| 罗甸县| 台东县| 尉氏县| 元朗区| 林州市| 宁都县| 淳化县| 旅游| 清原| 长宁区| 祁阳县| 沙雅县| 鄂州市| 儋州市| 迁西县| 凤山市| 禄丰县| 浦北县| 深州市| 信丰县| 米易县| 大埔区| 申扎县| 六枝特区| 酒泉市| 手机| 普陀区| 贵定县| 勐海县| 永仁县|