Como compactar um PNG em C #

Este exemplo cobre os detalhes de como compactar um PNG em C#. Abrange todos os recursos, namespaces, classes, métodos e código de exemplo de trabalho para comprimir PNG usando C#. O aplicativo desenvolvido pode ser utilizado em qualquer ambiente compatível com .NET dentro do Windows, Linux ou macOS.

Etapas para compactar PNG usando C#

  1. Estabeleça o ambiente adicionando Aspose.Imaging usando o gerenciador de pacotes NuGet
  2. Acesse a imagem PNG de origem usando uma instância da classe Image
  3. Use a classe PngOptions para definir a taxa de compactação junto com outras propriedades
  4. Salve a imagem PNG compactada no disco

Seguindo as etapas mencionadas acima, você pode gerenciar facilmente a compactação PNG em C# usando uma abordagem passo a passo em que configuramos o ambiente incluindo os recursos necessários na solução. Em seguida, carregaremos o arquivo PNG de origem do disco usando uma instância da classe Image. Nas etapas subseqüentes, o objeto de classe PngOptions será criado para definir a taxa de compactação junto com outras propriedades, que serão seguidas salvando o PNG compactado no disco.

Código para compactar PNG usando C#

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Png;
using Aspose.Imaging.ImageOptions;
namespace TestImaging
{
public class CompressPng
{
public static void PngCompression()
{
String path = @"/Users/Documents/TestData/";
// Apply the product license to compress a PNG file in C#
License PngCompressLicense = new License();
PngCompressLicense.SetLicense(path + "Conholdate.Total.Product.Family.lic");
var inputPngFile = path+"Sample.png";
var outputPngFile = path+"compressed_image.png";
using (var PngImage = Image.Load(inputPngFile))
{
PngImage.Save(outputPngFile, new PngOptions
{
// Set the compression level
CompressionLevel = 9,
Progressive = true,
//Set the color type
ColorType = PngColorType.IndexedColor,
Palette = ColorPaletteHelper.GetCloseImagePalette((RasterImage)PngImage, 1 << 5)
});
}
}
}
}

O exemplo acima pode ser usado para comprimir arquivo PNG em C# usando uma interface de API muito simples. A classe Image expõe várias funções de sobrecarga que você pode usar para carregar as imagens de um fluxo junto com outros parâmetros LoadOptions adicionais para dar suporte a outros tipos de imagens. O objeto de classe PngOptions expõe as propriedades para definir o tipo de cor, taxa de compactação, opções de rasterização de vetor, etc., para citar alguns.

Este tópico nos ensinou a desenvolver um aplicativo que pode executar facilmente a compactação PNG usando C#. Se você quiser aprender como converter um PNG para ICON, consulte o artigo em como converter PNG para ICON em C #.

 Português