VSSX у SVG

Microsoft Visio часто використовується в бізнес-налаштуваннях для організації, візуалізації та передачі складних робочих процесів, таких як організаційні діаграми, моделі баз даних, діаграми бізнес-схем. Корпорація Майкрософт представила формат VSSX, коли випустила Visio 2013. VSSX – це формат на основі Zip, який замінив двійковий формат VSS і може використовуватися у Visio 2013 і вище. Тому, щоб відкривати, редагувати та зберігати файли VSSX, ми використовуємо Microsoft Visio. Але він доступний лише на платформі Windows, і Microsoft не має настільної версії Visio для платформ macOS або Linux. Отже, з точки зору переносимості, ми можемо розглянути можливість перетворення файлів VSSX у формат SVG, який має такі переваги, як масштабованість, зручність для SEO, можливість редагування та незалежність роздільної здатності на будь-якій платформі. Крім того, SVG є гнучким, стандартом W3C, легким, придатним для друку, індексованим і легко стискається.

У цій статті ми докладніше обговоримо наступні теми

API обробки файлів Visio

Aspose.Diagram Cloud — це REST API, який надає можливості створювати, редагувати та відтворювати діаграми Visio в інших популярних форматах. Крім того, програма на основі Aspose.Diagram Cloud не потребує стороннього програмного забезпечення для обробки діаграм/блок-схем Microsoft Visio і покладається на власний механізм. Таким чином, за допомогою цього простого у використанні рішення ви можете виконувати складні операції над файлами Visio з меншою кількістю рядків коду. Цей дизайн дозволяє легко зосередитися на бізнес-вимогах і забути про внутрішні складнощі впровадження.

Тепер, щоб ще більше полегшити роботу наших клієнтів, ми створили пакети SDK для певних мов програмування, щоб вони могли скористатися перевагами обробки файлів Visio у своїх улюблених IDE. Щоб виконати перетворення файлів Visio у формат SVG у програмі .NET, спробуйте скористатися Aspose.Diagram Cloud SDK для .NET.

монтаж

Першим кроком у використанні Cloud SDK є його встановлення. Його можна завантажити з NuGet або GitHub. Будь ласка, виконайте таку команду в терміналі, щоб інсталювати SDK через NuGet:

nuget install Aspose.Diagram-Cloud

Або виконайте таку команду в NuGet Package Manager:

 PM> Install-Package Aspose.Diagram-Cloud
Менеджер пакетів NuGet

Зображення 1: - Встановлення пакету за допомогою NuGet Package Manager.

Встановлення Visual Studio

Cloud SDK також можна безпосередньо додати в рішення Visual Studio:

  1. Відкрийте провідник рішень.
  2. Розгорніть проект і клацніть правою кнопкою миші папку Packages у вашому рішенні.
  3. Виберіть параметр «Керувати пакетами NuGet…».
  4. Натисніть на вкладку «Огляд» і знайдіть «Aspose.Diagram-Cloud».
  5. Клацніть пакет Aspose.Diagram-Cloud, виберіть відповідну версію на правій вкладці та натисніть кнопку «Додати пакет».
Пакет Aspose.Diagram-Cloud

Зображення 2:- Aspose.Diagram-Cloud у Visual Studio 2022.

Хмарна підписка

Після встановлення наступним кроком є створення безкоштовного облікового запису за підпискою, відвідавши інформаційну панель Aspose.Cloud. Під час підписки реквізити кредитної картки чи інші платіжні дані не потрібні. Крім того, під обліковим записом безкоштовної підписки ви можете виконувати до 150 безкоштовних запитів на обробку документів.

Тож скористайтеся своїм обліковим записом GitHub або Google, щоб просто зареєструватися, або натисніть кнопку Створити новий обліковий запис і надайте необхідну інформацію. Тепер увійдіть на інформаційну панель, використовуючи облікові дані, розгорніть розділ «Програми» на інформаційній панелі та прокрутіть униз до розділу «Облікові дані клієнта», щоб переглянути дані про ідентифікатор клієнта та секрет клієнта.

Облікові дані клієнта

Зображення 3: облікові дані клієнта на інформаційній панелі Aspose.Cloud.

VSSX у SVG у C#

Процес перетворення швидкий, але надійний, що забезпечує високу точність результатів незалежно від формату отриманого файлу.

  • Першим кроком є створення екземпляра класу DiagramApi, передаючи дані ClientID і ClientSecret як аргументи
  • По-друге, прочитайте вхідний вміст VSSX в екземпляр FileStream
  • По-третє, створіть об’єкт класу StorageApi, передавши ті самі дані ClientID і Client Secret як аргументи
  • Наступним кроком є завантаження файлу VSSX у хмарне сховище за допомогою методу UploadFile(…) StorageApi
  • Тепер викличте метод DownloadFileWithFormat(..) DiagramApi, щоб ініціювати операцію перетворення файлу
  • Нарешті, збережіть отриманий файл на локальному диску за допомогою об’єкта File.Create
// Отримайте ClientID з https://dashboard.aspose.cloud/
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))
    {
        // створити екземпляр класу Storage
        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.vssx і converted.svg.

Попередній перегляд VSSX у SVG

Зображення 4: - Попередній перегляд перетворення VSSX у SVG.

Перетворіть VSSX на SVG за допомогою команди cURL

Оскільки наш Cloud API базується на архітектурі REST, до нього також можна отримати доступ за допомогою команд cURL. Але, як згадувалося раніше, API доступні лише авторизованим особам, тому на основі ідентифікатора клієнта та секретних даних клієнта нам потрібно створити маркер доступу 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 розроблено згідно з ліцензією Массачусетського технологічного інституту, і його повний вихідний код можна завантажити з GitHub. Крім того, якщо у вас виникнуть проблеми під час використання API, будь ласка, зв’яжіться через безкоштовний форум підтримки.

Схожі статті

Ми також рекомендуємо вам перейти за наступними посиланнями, щоб дізнатися більше