VSSX에서 SVG로

Microsoft Visio는 종종 조직도, 데이터베이스 모델, 비즈니스 흐름도 다이어그램과 같은 복잡한 워크플로를 구성, 시각화 및 전달하는 데 비즈니스 환경에서 사용됩니다. Microsoft는 Visio 2013을 출시할 때 VSSX 형식을 도입했습니다. VSSX는 바이너리 기반 VSS 형식을 대체한 Zip 기반 형식으로 Visio 2013 이상에서 사용할 수 있습니다. 따라서 VSSX 파일을 열고, 편집하고, 저장하려면 Microsoft Visio를 사용합니다. 그러나 Windows 플랫폼에서만 사용할 수 있으며 Microsoft에는 macOS 또는 Linux 플랫폼용 데스크톱 버전의 Visio가 없습니다. 따라서 이식성 관점에서 확장성, SEO 친화적, 편집 기능 및 모든 플랫폼에서 해상도 독립성과 같은 이점이 있는 VSSX 파일을 SVG 형식으로 변환하는 것을 고려할 수 있습니다. 또한 SVG는 유연하고 W3C 표준이며 가볍고 인쇄 가능하며 색인 가능하고 쉽게 압축할 수 있습니다.

이 글에서는 다음 주제에 대해 더 자세히 논의해 보겠습니다.

Visio 파일 처리 API

Aspose.Diagram Cloud는 Visio 다이어그램을 다른 인기 있는 형식으로 만들고, 편집하고, 렌더링하는 기능을 제공하는 REST API입니다. 또한 Aspose.Diagram Cloud 기반 애플리케이션은 Microsoft Visio 다이어그램/흐름도를 처리하기 위해 타사 소프트웨어가 필요하지 않으며 자체 엔진에 의존합니다. 따라서 이 사용하기 쉬운 솔루션의 도움으로 더 적은 코드 줄로 Visio 파일에서 복잡한 작업을 수행할 수 있습니다. 이 디자인은 비즈니스 요구 사항에 집중하고 내부 구현 복잡성을 잊을 수 있는 편의성을 제공합니다.

이제 고객의 편의를 위해, 고객이 선호하는 IDE 내에서 Visio 파일 처리를 활용할 수 있도록 프로그래밍 언어별 SDK를 만들었습니다. .NET 애플리케이션에서 Visio 파일을 SVG 형식으로 변환하려면 Aspose.Diagram Cloud SDK for .NET을 사용해 보세요.

설치

Cloud SDK를 사용하는 첫 번째 단계는 설치입니다. NuGet 또는 GitHub에서 다운로드할 수 있습니다. NuGet을 통해 SDK를 설치하려면 터미널에서 다음 명령을 실행하세요.

nuget install Aspose.Diagram-Cloud

또는 NuGet 패키지 관리자에서 다음 명령을 실행합니다.

 PM> Install-Package Aspose.Diagram-Cloud
NuGet 패키지 관리자

이미지 1: NuGet 패키지 관리자를 사용한 패키지 설치.

Visual Studio 설치

Cloud SDK는 Visual Studio 솔루션 내부에 직접 추가할 수도 있습니다.

  1. 솔루션 탐색기를 엽니다.
  2. 프로젝트를 확장하고 솔루션 내의 패키지 폴더를 마우스 오른쪽 버튼으로 클릭합니다.
  3. NuGet 패키지 관리… 옵션을 선택하세요
  4. 찾아보기 탭을 클릭하고 “Aspose.Diagram-Cloud“를 검색합니다.
  5. Aspose.Diagram-Cloud 패키지를 클릭하고 오른쪽 탭에서 적절한 버전을 선택한 후 패키지 추가 버튼을 클릭합니다.
Aspose.Diagram-Cloud 패키지

이미지 2:- Visual Studio 2022의 Aspose.Diagram-Cloud.

클라우드 구독

설치 후 다음 단계는 Aspose.Cloud 대시보드를 방문하여 무료 구독 계정을 만드는 것입니다. 구독하는 동안 신용 카드나 기타 결제 세부 정보가 필요하지 않습니다. 또한 무료 구독 계정에서 최대 150개의 무료 문서 처리 요청을 수행할 수 있습니다.

따라서 GitHub 또는 Google 계정을 사용하여 간단히 가입하거나 새 계정 만들기 버튼을 클릭하고 필요한 정보를 제공하세요. 이제 자격 증명을 사용하여 대시보드에 로그인하고 대시보드에서 애플리케이션 섹션을 확장하고 클라이언트 자격 증명 섹션으로 스크롤하여 클라이언트 ID 및 클라이언트 비밀 세부 정보를 확인하세요.

클라이언트 자격 증명

이미지 3: Aspose.Cloud 대시보드의 클라이언트 자격 증명.

C#에서 VSSX를 SVG로

변환 과정은 빠르면서도 안정적이며, 결과 파일 형식에 관계없이 높은 충실도의 결과를 제공합니다.

  • 첫 번째 단계는 ClientID 및 ClientSecret 세부 정보를 인수로 전달하면서 DiagramApi 클래스의 인스턴스를 만드는 것입니다.
  • 둘째, 입력 VSSX 콘텐츠를 FileStream 인스턴스로 읽습니다.
  • 셋째, 동일한 ClientID 및 Client Secret 세부 정보를 인수로 전달하여 StorageApi 클래스의 객체를 생성합니다.
  • 다음 단계는 StorageApi의 UploadFile(…) 메서드를 사용하여 VSSX 파일을 클라우드 스토리지에 업로드하는 것입니다.
  • 이제 DiagramApi의 DownloadFileWithFormat(..) 메서드를 호출하여 파일 변환 작업을 시작합니다.
  • 마지막으로 File.Create 객체를 사용하여 로컬 드라이브에 결과 파일을 저장합니다.
// https://dashboard.aspose.cloud/에서 ClientID를 가져옵니다.
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// DiagramApi 객체를 생성합니다
DiagramApi diagramApi = new DiagramApi("client_credentials", clientID, clientSecret);

// VSSX 파일 이름을 입력하세요
String inputFile = "MVPSession1SimpleTimeline.vssx";
// 결과 SVG 파일 이름
String resultant = "Conveted.svg";

try
{   
    // 로컬 드라이브에서 입력 VSSX 파일을 읽습니다.
    using (var inputStream = new FileStream("C:\\Users\\Downloads\\" + inputFile, FileMode.Open))
    {
        // 스토리지 클래스 인스턴스를 생성합니다
        StorageApi storageApi = new StorageApi("client_credentials", clientID, clientSecret);
        // 입력 VXXS 파일을 클라우드 스토리지에 업로드
        storageApi.UploadFile(inputFile, inputStream);
    
        // 파일 변환 프로세스를 시작합니다
        var response = diagramApi.DownloadFileWithFormat(inputFile, format: "SVG", null);
        if (response != null)
        {
            Console.WriteLine("Successfully converted VSD to SVG !");
        }

        // 로컬 시스템 드라이브에 결과 파일을 저장하는 사용자 정의 방법
        saveToDisk(response, "C:\\Users\\Downloads\\" + resultant);
    }
}
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();
}

위 예제에서 사용된 입력 VSSX 및 SVG 파일은 MVPSession1SimpleTimeline.vssxconverted.svg에서 다운로드할 수 있습니다.

VSSX에서 SVG로 미리보기

이미지 4: VSSX에서 SVG로 변환된 미리보기.

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

클라우드 API는 REST 아키텍처를 기반으로 하므로 cURL 명령을 사용하여 액세스할 수도 있습니다. 하지만 앞서 언급했듯이 API는 권한이 있는 사람만 액세스할 수 있으므로 클라이언트 ID와 클라이언트 비밀 정보를 기반으로 JWT 액세스 토큰을 만들어야 합니다. 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"

JWT 액세스 토큰을 생성한 후 다음 cURL 명령을 사용하여 클라우드 저장소에 파일을 업로드하세요.

curl -X PUT "https://api.aspose.cloud/v3.0/diagram/storage/file/MVPSession1SimpleTimeline.vssx" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{}}

이제 파일이 클라우드 저장소에 업로드되었으므로 다음 명령을 실행하여 변환을 수행하고 지정된 위치에 출력을 저장하세요.

curl -X GET "https://api.aspose.cloud/v3.0/diagram/MVPSession1SimpleTimeline.vssx?format=SVG" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.svg

결론

이 문서에서는 Aspose.Diagram Cloud의 VSSX 파일 형식을 SVG로 변환하는 기능에 대해 설명했습니다. C# .NET 코드와 cURL 명령을 사용하여 변환을 수행하는 단계에 대해서도 설명했습니다. 저희 SDK는 MIT 라이선스에 따라 개발되었으며 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다. 또한 API를 사용하는 동안 문제가 발생할 경우 무료 지원 포럼을 통해 언제든지 문의하세요.

관련기사

또한 자세한 내용을 알아보려면 다음 링크를 방문하는 것이 좋습니다.