C#에서 이미지 크기 조정

요구 사항을 충족하지 않는 크기의 이미지가 자주 발생하므로 그에 따라 크기를 조정해야 합니다. 이 기사에서는 .NET 애플리케이션 내에서 C#을 사용하여 이미지 크기를 조정하는 방법을 배웁니다. 또한 래스터 이미지와 벡터 이미지의 크기를 명시적으로 조정하는 방법을 배우게 됩니다.

이미지 크기를 조정하는 .NET API

이미지 크기를 조정합니다. .NET용 Aspose.Imaging을 사용합니다. 다양한 유형의 래스터 및 벡터 이미지를 조작할 수 있는 강력한 이미지 처리 API입니다. API의 DLL을 다운로드하거나 NuGet을 통해 설치할 수 있습니다.

PM> Install-Package Aspose.Imaging

C#을 사용하여 래스터 이미지 크기 조정

래스터 이미지의 크기를 조정하는 두 가지 방법(PNG, GIF, JPEG 등)이 있습니다. 단순 크기 조정과 크기 조정 유형을 사용한 크기 조정입니다. 단순 크기 조정에서는 높이와 너비를 제공하여 이미지 크기를 조정합니다. 반면 두 번째 방법은 다른 크기 조정 기술을 사용합니다. 다음 섹션에서는 위에서 언급한 각 방법을 사용하여 이미지 크기를 조정하는 방법을 보여줍니다.

이미지의 간단한 크기 조정

다음은 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");
}

크기 조정 유형을 사용하여 이미지 크기 조정

ResizeType 열거형은 요구 사항에 따라 사용할 수 있는 크기 조정 기술을 지정하는 데 사용됩니다. 지원되는 크기 조정 유형의 전체 목록은 여기에서 확인할 수 있습니다. 다음은 특정 크기 조정 기술을 사용하여 이미지 크기를 조정하는 단계입니다.

다음 코드 샘플은 특정 크기 조정 기술을 사용하여 이미지 크기를 조정합니다.

// 이미지 로드
using (Image image = Image.Load("aspose-logo.jpg"))
{
    // 이미지 크기 조정 및 크기 조정된 이미지 저장
    image.Resize(300, 300, ResizeType.LanczosResample);
    image.Save("SimpleResizing_out.jpg");
}

비례적으로 이미지 크기 조정

높이와 너비를 지정하여 이미지 크기를 조정하면 이미지가 축소되거나 축소될 수 있습니다. 따라서 가로 세로 비율을 수동으로 계산해야 합니다. 그러나 가로 세로 비율을 잘못 계산하면 이미지가 늘어날 수 있습니다. 이러한 문제를 방지하기 위해 비례 크기 조정을 사용할 수 있습니다. 이를 달성하기 위한 단계는 다음과 같습니다.

이미지 크기를 비례적으로 조정하면서 특정 크기 조정 유형을 사용하려는 경우 오버로드 메서드 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#에서 벡터 이미지 크기 조정

.NET용 Aspose.Imaging을 사용하면 벡터 이미지의 크기를 조정하고 래스터 이미지 형식으로 저장할 수도 있습니다. 다음 코드 샘플은 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()
    });
 }

무료 API 라이선스 받기

평가 제한 없이 Aspose.Imaging for .NET을 사용하기 위해 무료 임시 라이선스 받기할 수 있습니다.

결론

이 문서에서는 C#을 사용하여 프로그래밍 방식으로 이미지 크기를 조정하는 방법을 배웠습니다. 또한, 코드 샘플은 이미지의 간단한 크기 조정 또는 특정 유형을 사용하여 크기 조정을 수행하는 방법을 보여주었습니다. 또한 이미지 크기를 조정하는 동안 가로 세로 비율의 수동 계산을 피하는 방법을 다루었습니다. 또한 벡터 이미지의 크기 조정도 마지막에 논의됩니다. 또한 문서를 사용하여 .NET 이미지 처리 API에 대해 자세히 알아볼 수 있습니다. 또한 GitHub에서 전체 소스 코드 샘플 패키지를 다운로드할 수 있습니다. 질문이 있는 경우 포럼에서 문의할 수 있습니다.

또한보십시오