VSSX a SVG

Microsoft Visio se utiliza a menudo en entornos empresariales para organizar, visualizar y comunicar flujos de trabajo complejos, como organigramas, modelos de bases de datos y diagramas de flujo empresariales. Microsoft introdujo el formato VSSX cuando lanzó Visio 2013. VSSX es un formato basado en Zip que reemplazó al formato VSS basado en binario y puede ser utilizado por Visio 2013 y versiones posteriores. Por lo tanto, para abrir, editar y guardar archivos VSSX, utilizamos Microsoft Visio. Pero solo está disponible en la plataforma Windows y Microsoft no tiene una versión de escritorio de Visio para macOS o la plataforma Linux. Entonces, desde una perspectiva de portabilidad, podemos considerar convertir archivos VSSX al formato SVG que tiene beneficios como escalabilidad, ser compatible con SEO, capacidad de edición e independencia de resolución en cualquier plataforma. Además, SVG es flexible, un estándar W3C, liviano, imprimible, indexable y fácilmente comprimible.

En este artículo, vamos a discutir los siguientes temas con más detalle.

API de procesamiento de archivos de Visio

Aspose.Diagram Cloud es una API REST que ofrece la posibilidad de crear, editar y renderizar diagramas de Visio en otros formatos populares. Además, una aplicación basada en Aspose.Diagram Cloud no requiere ningún software de terceros para procesar diagramas de flujo/diagramas de Visio de Microsoft y se basa en su propio motor. Por lo tanto, con la ayuda de esta solución fácil de usar, puede realizar operaciones complejas en archivos de Visio con menos líneas de código. Este diseño permite centrarse en los requisitos empresariales y olvidarse de las complejidades de implementación interna.

Ahora, para facilitar aún más las cosas a nuestros clientes, hemos creado SDK específicos para lenguajes de programación para que puedan aprovechar los beneficios del procesamiento de archivos de Visio en su IDE favorito. Para realizar la conversión de archivos de Visio al formato SVG en la aplicación .NET, intente utilizar Aspose.Diagram Cloud SDK para .NET.

Instalación

El primer paso para utilizar el SDK de Cloud es su instalación. Puede descargarse desde NuGet o GitHub. Ejecute el siguiente comando en la terminal para instalar el SDK mediante NuGet:

nuget install Aspose.Diagram-Cloud

O ejecute el siguiente comando en el Administrador de paquetes NuGet:

 PM> Install-Package Aspose.Diagram-Cloud
Administrador de paquetes NuGet

Imagen 1:- Instalación del paquete mediante el Administrador de paquetes NuGet.

Instalación de Visual Studio

El SDK de Cloud también se puede agregar directamente dentro de la solución de Visual Studio:

  1. Abra el Explorador de soluciones.
  2. Expanda el proyecto y haga clic derecho en la carpeta Paquetes dentro de su solución.
  3. Seleccione la opción Administrar paquetes NuGet…
  4. Haga clic en la pestaña Explorar y busque “Aspose.Diagram-Cloud”.
  5. Haga clic en el paquete Aspose.Diagram-Cloud, seleccione la versión adecuada en la pestaña derecha y haga clic en el botón Agregar paquete.
Paquete Aspose.Diagram-Cloud

Imagen 2:- Aspose.Diagram-Cloud en Visual Studio 2022.

Suscripción a la nube

Después de la instalación, el siguiente paso es crear una cuenta de suscripción gratuita visitando el panel de control de Aspose.Cloud. Durante la suscripción, no se requiere tarjeta de crédito ni otros datos de pago. Además, con una cuenta de suscripción gratuita, puede realizar hasta 150 solicitudes de procesamiento de documentos gratuitas.

Utilice su cuenta de GitHub o Google para registrarse o haga clic en el botón Crear una nueva cuenta y proporcione la información solicitada. Ahora inicie sesión en el panel de control con sus credenciales y expanda la sección Aplicaciones desde el panel de control y desplácese hacia abajo hasta la sección Credenciales del cliente para ver los detalles de ID y secreto del cliente.

Credenciales del cliente

Imagen 3: Credenciales del cliente en el panel de Aspose.Cloud.

VSSX a SVG en C#

El proceso de conversión es rápido pero confiable y ofrece resultados de alta fidelidad independientemente del formato de archivo resultante.

  • El primer paso es crear una instancia de la clase DiagramApi mientras se pasan los detalles de ClientID y ClientSecret como argumentos.
  • En segundo lugar, lea el contenido VSSX de entrada en la instancia de FileStream
  • En tercer lugar, cree un objeto de la clase StorageApi pasando los mismos detalles de ClientID y Client Secret como argumentos.
  • El siguiente paso es cargar el archivo VSSX al almacenamiento en la nube utilizando el método UploadFile(…) de StorageApi
  • Ahora llame al método DownloadFileWithFormat(..) de DiagramApi para iniciar la operación de conversión de archivos
  • Finalmente, guarde el archivo resultante en la unidad local usando el objeto File.Create
// Obtenga ClientID desde https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// crear un objeto de DiagramApi
DiagramApi diagramApi = new DiagramApi("client_credentials", clientID, clientSecret);

// Ingrese el nombre del archivo VSSX
String inputFile = "MVPSession1SimpleTimeline.vssx";
// nombre del archivo SVG resultante
String resultant = "Conveted.svg";

try
{   
    // Leer el archivo VSSX de entrada desde la unidad local
    using (var inputStream = new FileStream("C:\\Users\\Downloads\\" + inputFile, FileMode.Open))
    {
        // crear una instancia de clase de almacenamiento
        StorageApi storageApi = new StorageApi("client_credentials", clientID, clientSecret);
        // Subir archivo de entrada VXXS al almacenamiento en la nube
        storageApi.UploadFile(inputFile, inputStream);
    
        // Iniciar el proceso de conversión de archivos
        var response = diagramApi.DownloadFileWithFormat(inputFile, format: "SVG", null);
        if (response != null)
        {
            Console.WriteLine("Successfully converted VSD to SVG !");
        }

        // Método personalizado para guardar el archivo resultante en la unidad del sistema local
        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();
}

Los archivos de entrada VSSX y SVG utilizados en el ejemplo anterior se pueden descargar de MVPSession1SimpleTimeline.vssx y converted.svg.

Vista previa de VSSX a SVG

Imagen 4: Vista previa de la conversión de VSSX a SVG.

Convertir VSSX a SVG usando el comando cURL

Como nuestra API de la nube se basa en la arquitectura REST, también se puede acceder a ella mediante comandos cURL. Pero, como se mencionó anteriormente, las API solo son accesibles para personas autorizadas, por lo que, en función de los detalles de ID de cliente y Secreto de cliente, debemos crear un token de acceso JWT. Ejecute el siguiente comando para generar el token de acceso 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"

Una vez que hayamos generado el token de acceso JWT, cargue el archivo al almacenamiento en la nube utilizando el siguiente comando 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":{}}

Ahora que el archivo está cargado en el almacenamiento en la nube, ejecute el siguiente comando para realizar la conversión y guardar la salida en la ubicación especificada.

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

Conclusión

En este artículo, analizamos las capacidades de Aspose.Diagram Cloud para la conversión del formato de archivo VSSX a SVG. Analizamos los pasos para realizar la conversión utilizando el código C# .NET y el comando cURL. Nuestros SDK se desarrollan bajo la licencia MIT y su código fuente completo se puede descargar desde GitHub. Además, en caso de que surja algún problema al utilizar la API, no dude en ponerse en contacto a través del Foro de soporte gratuito.

Artículos relacionados

También te recomendamos visitar los siguientes enlaces para conocer más sobre