SVG에서 PNG로

SVG를 PNG로 온라인 변환 | SVG를 PNG로 저장

확장 가능한 벡터 그래픽(SVG]1)은 웹용 벡터 기반 그래픽을 정의합니다. SVG는 상호 작용 및 애니메이션을 지원하는 2차원 그래픽용 XML 기반 벡터 이미지 형식입니다. 이 형식은 이미지가 어떤 크기로든 확장될 수 있는 인터넷에서 2차원 이미지를 렌더링하는 데 널리 사용됩니다. 그러나 손실 없는 압축을 위해 SVG를 PNG로 변환해야 하는 경우 세부 정보와 품질이 손상되지 않으므로 Aspose.Imaging Cloud가 실행 가능한 솔루션입니다.

이 문서에서는 SVG를 PNG로 온라인에서 변환하는 방법에 대한 자세한 내용을 제공합니다.

이미지 변환 API

Aspose.Imaging Cloud는 이미지 처리 요구 사항에 대한 프로그래밍 솔루션입니다. 크기 조정, 자르기, 회전, 크기 조정, 뒤집기, 검색 및 다양한 지원 형식으로 이미지 내보내기 등의 작업을 수행할 수 있습니다. 사용자를 더욱 편리하게 하기 위해 프로그래밍 언어별 SDK를 만들었고 이 문서의 범위에 따라 Aspose.Imaging Cloud SDK for .NET을 사용할 것입니다. 이제 다음 링크를 방문하여 Aspose.Cloud SDK 설치 방법에 대해 자세히 알아보세요.

C#에서 SVG를 PNG로 변환

클라우드 저장소에 이미 있는 SVG 이미지를 PNG 형식으로 변환하려면 아래 지침을 따르세요.

  • 첫 번째 단계는 ClientID와 ClientSecret 세부 정보를 인수로 전달하면서 ImagingApi의 인스턴스를 만드는 것입니다.
  • 둘째, ImagingApi의 UploadFile(..) 메서드를 사용하여 SVG 이미지를 클라우드 저장소에 업로드합니다.
  • 셋째, 입력 SVG 이름과 결과 형식을 인수로 전달하여 ConvertImageRequest 클래스의 인스턴스를 생성합니다.
  • 이제 ConvertImage(..) 메서드를 호출하여 변환 작업을 수행합니다. 결과 PNG는 Stream 인스턴스로 반환됩니다.
  • 마지막으로 File.Create를 사용하여 사용자 지정 메서드를 호출하여 Stream 인스턴스를 로컬 드라이브에 파일로 저장합니다.
// 전체 예를 보려면 https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet을 방문하세요.
// https://dashboard.aspose.cloud/에서 클라이언트 자격 증명을 가져옵니다.
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// DiagramApi 객체를 생성합니다
ImagingApi imagingApi = new ImagingApi(clientSecret,clientID, "https://api.aspose.cloud/");

// 입력 SVG 파일 이름
String inputFileName = "trashloader2.svg";
// 결과 파일 형식
String newFormat = "png";
// 출력 파일 이름
String newFileName = "Converted.png";

try
{
    // 로컬 드라이브에서 파일을 로드합니다
    using (var inputStream = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + inputFileName))
    {
        // 파일 업로드 요청 생성    
        UploadFileRequest request = new UploadFileRequest(inputFileName, inputStream);
        // 기본 클라우드 저장소에 파일 업로드
        imagingApi.UploadFile(request);
                
        // 이미지 변환을 위한 인스턴스 생성
        var response = new ConvertImageRequest(inputFileName,newFormat);
        // 이미지 변환 작업을 시작합니다
        var responseStream = imagingApi.ConvertImage(response);
                
        // 로컬 스토리지에 스트림 인스턴스를 파일로 저장합니다.
        saveToDisk(responseStream, @"C:\Users\shahbnay\Downloads\" + newFileName);
    }
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
        
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

참고로, 위 예시에서 사용된 샘플 이미지는 trashloader2.svgConverted.png에서 다운로드할 수 있습니다.

SVG에서 PNG로 변환 미리보기

이미지 1: SVG에서 PNG로 변환 미리보기.

cURL 명령을 사용하여 SVG를 PNG로 변환

이 섹션에서는 cURL 명령을 사용하여 SVG를 PNG로 변환합니다. 첫 번째 단계는 클라이언트 자격 증명을 기반으로 JWT 액세스 토큰을 생성하는 것입니다. 다음 명령을 실행하여 토큰을 생성하세요.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

이제 다음 cURL 명령을 실행하여 SVG를 PNG로 변환합니다. 변환 결과는 응답 스트림으로 반환되며 로컬 드라이브에 저장할 수 있습니다.

curl -X GET "https://api.aspose.cloud/v3.0/imaging/trashloader2.svg/convert?format=png" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.png

0으로 인덱싱된 multipart/form-data 콘텐츠나 원시 본문 스트림으로 전달된 SVG 이미지를 변환해야 하는 경우

curl -X POST "https://api.aspose.cloud/v3.0/imaging/convert?format=png" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"imageData":{}} \
-o Converted.png

결론

Aspose.Imaging Cloud API의 이미지 변환 기능에 대해 논의했습니다. 특히 C# .NET 코드 조각을 사용하여 SVG를 PNG로 변환하는 데 중점을 두었습니다. 동시에 cURL 명령을 통해 SVG를 PNG로 저장하는 방법에 대한 세부 정보를 논의했습니다. API는 Swagger 인터페이스를 통해서도 액세스할 수 있으며 웹 브라우저 내에서 API를 테스트할 수 있습니다. 그럼에도 불구하고 Cloud SDK는 MIT 라이선스에 따라 개발되었으므로 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다.

API를 사용하는 동안 문제가 발생하거나 관련 문의 사항이 있는 경우 무료 제품 지원 포럼을 통해 언제든지 문의해 주시기 바랍니다.

관련 링크

자세한 내용을 알아보려면 다음 링크를 방문하세요.