이 예는 **C#**에서 PNG을 압축하는 방법에 대한 세부 정보를 다룹니다. **C#**을 사용하여 PNG를 압축하기 위한 모든 리소스, 네임스페이스, 클래스, 메서드 및 작업 예제 코드를 다룹니다. 개발된 애플리케이션은 Windows, Linux 또는 macOS 내부의 모든 .NET 호환 환경에서 활용할 수 있습니다.
C#을 사용하여 PNG를 압축하는 단계
- NuGet 패키지 관리자를 사용하여 Aspose.Imaging을 추가하여 환경을 설정합니다.
- Image 클래스의 인스턴스를 사용하여 소스 PNG 이미지에 액세스
- PngOptions 클래스를 사용하여 다른 속성과 함께 압축률을 설정합니다.
- 압축된 PNG 이미지를 디스크에 저장
위에서 언급한 단계를 따르면 솔루션에 필요한 리소스를 포함하여 환경을 설정하는 단계별 접근 방식을 사용하여 C#*에서 *PNG 압축을 쉽게 관리할 수 있습니다. 그런 다음 Image 클래스의 인스턴스를 사용하여 디스크에서 원본 PNG 파일을 로드합니다. 후속 단계에서 PngOptions 클래스 개체를 만들어 다른 속성과 함께 압축률을 설정한 다음 압축된 PNG를 디스크에 저장합니다.
C#을 사용하여 PNG를 압축하는 코드
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) | |
}); | |
} | |
} | |
} | |
} |
위의 예는 매우 간단한 API 인터페이스를 사용하여 *C#*에서 PNG 파일을 압축하는 데 사용할 수 있습니다. Image 클래스는 다른 유형의 이미지를 지원하기 위해 다른 추가 LoadOptions 매개 변수와 함께 스트림에서 이미지를 로드하는 데 사용할 수 있는 여러 오버로드 함수를 노출합니다. PngOptions 클래스 개체는 색상 유형, 압축 비율, 벡터 래스터화 옵션 등을 설정하는 속성을 노출합니다.
이 항목에서는 C#*을 사용하여 *PNG 압축을 쉽게 수행할 수 있는 응용 프로그램을 개발하는 방법을 배웠습니다. PNG를 ICON으로 변환하는 방법에 대해 알아보려면 C#에서 PNG를 ICON으로 변환하는 방법의 문서를 참조하세요.