Aspose.Diagram for Java es una API de Java rica en funciones para manipular diagramas de Visio mediante programación sin necesidad de Microsoft Visio. La API admite trabajar con formatos populares de Visio, incluidos VSD, VSDX, VDX, VSDM, VSSM y VSSX. Recientemente, hemos aprovechado las capacidades de Aspose.Diagram for Java y hemos hecho posible implementar funciones de automatización de MS Visio en aplicaciones Node.js. Estas características le permiten crear, manipular, convertir y procesar diagramas de MS Visio dentro de su aplicación Node.js.

Aspose.Diagram for Node.js a través de Java proporciona un conjunto completo de funciones para automatizar la creación o manipulación de diagramas de Visio. Puede crear, leer, exportar, imprimir y proteger los diagramas con bastante facilidad en unas pocas líneas de código. En este artículo, cubriré cómo crear diagramas de Visio desde cero dentro de una aplicación Node.js. El resto del artículo se divide en las siguientes secciones.

Node.js API de Visio - Instalación

Use el siguiente comando para instalar el paquete Aspose.Diagram en su aplicación Node.js.

npm install aspose.diagram --save

Crear diagrama de MS Visio en Node.js

Comenzaré creando un diagrama de Visio vacío (VSDX) desde cero. Los siguientes son los pasos para realizar esta operación.

El siguiente ejemplo de código muestra cómo crear un diagrama de Visio (VSDX) en una aplicación de Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();
diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Agregar maestro al diagrama de Visio en Node.js

Las plantillas de Visio contienen la colección de formas maestras que se utilizan para agregar o copiar formas en los diagramas de Visio. Agrega un maestro al diagrama de Visio mediante el archivo de plantilla VSS. Los siguientes son los pasos para agregar un maestro usando Aspose.Diagram.

  • Cree un nuevo diagrama de Visio usando la clase Diagram.
  • Agregue maestro al diagrama usando la ruta del archivo de plantilla y el nombre/ID del maestro.
  • Agregue forma al diagrama usando el nombre del maestro.
  • Guarde el diagrama usando el método Diagram.save().

El siguiente ejemplo de código muestra cómo agregar un maestro a un diagrama de Visio en Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

// Cargar plantilla en un flujo
templateFileName = "NetApp-FAS-series.vss";

// Agregue maestro con la ruta del archivo de plantilla y la identificación maestra
masterName = "FAS80xx rear empty";
diagram.addMaster(templateFileName, 2);

// O agregue el maestro con la ruta del archivo de plantilla y el nombre del maestro
diagram.addMaster(templateFileName, masterName);

// O agregue maestro al diagrama desde el diagrama de origen
src = new aspose.diagram.Diagram(templateFileName);
diagram.addMaster(src, masterName);

// Agregue forma con PinX y PinY definidos.
diagram.addShape(2.0, 2.0, masterName, 0);
diagram.addShape(6.0, 6.0, masterName, 0);

// Agregue forma con PinX, PinY, ancho y alto definidos.
diagram.addShape(7.0, 3.0, 1.5, 1.5, masterName, 0);

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Insertar páginas en un diagrama de Visio en Node.js

Antes de crear las formas, debe tener al menos una página en el diagrama de Visio. Cada página en el diagrama de Visio tiene un nombre y una identificación que se usa para identificar de forma única esa página. Los siguientes son los pasos para agregar una página en el diagrama de Visio.

El siguiente ejemplo de código muestra cómo insertar páginas en un diagrama de Visio en Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();
// calcula la identificación máxima de la página
 max = 0;
if (diagram.getPages().getCount() != 0)
    max = diagram.getPages().get(0).getID();

for ( i = 1; i < diagram.getPages().getCount(); i++)
{
    if (max < diagram.getPages().get(i).getID())
        max = diagram.getPages().get(i).getID();
}
        
// Inicializar un nuevo objeto de página
newPage = new aspose.diagram.Page();
// Escoger un nombre
newPage.setName("new page");
// Establecer ID de página
newPage.setID(max + 1);

// O prueba el constructor de página
// Página newPage = nueva página (MaxPageId + 1);

// Agregar una nueva página en blanco
diagram.getPages().add(newPage);
diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Crear una forma en un diagrama de Visio en Node.js

Una vez que haya creado la página en el diagrama, puede agregarle una forma. Los siguientes son los pasos para crear e insertar una forma en el diagrama.

  • Cree un objeto de la clase Diagrama.
  • Agregue maestro al diagrama utilizando la ruta del archivo de plantilla.
  • Agrega una forma de rectángulo usando el método Diagram.addShape().
  • Establezca las propiedades de la forma, como ID, texto, posición, color de relleno, etc.
  • Guarde el diagrama usando el método Diagram.save().

El siguiente ejemplo de código muestra cómo agregar una forma al diagrama de Visio en Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram("output.vsdx");

// Obtener página por nombre
page = diagram.getPages()[.getPage("Page-2")];

// Agregue maestro con la ruta del archivo de plantilla y la identificación maestra
masterName = "Rectangle";
// Agregue el maestro con la ruta del archivo de plantilla y el nombre del maestro
diagram.addMaster("Basic Shapes.vss", masterName);
            
// La indexación de páginas comienza desde 0
PageIndex = 2;
width = 2, height = 2, pinX = 4.25, pinY = 4.5;
// Agregar una nueva forma de rectángulo
rectangleId = diagram.addShape(pinX, pinY, width, height, masterName, PageIndex);
            
// Establecer propiedades de forma 
rectangle = page.getShapes().getShape(rectangleId);
rectangle.getXForm().getPinX().setValue(5);
rectangle.getXForm().getPinY().setValue(5);
rectangle.setType(TypeValue.SHAPE);
rectangle.getText().getValue().add(new Txt("Aspose Diagram"));
rectangle.setTextStyle(diagram.getStyleSheets().get(3));
rectangle.getLine().getLineColor().setValue("#ff0000");
rectangle.getLine().getLineWeight().setValue(0.03);
rectangle.getLine().getRounding().setValue(0.1);
rectangle.getFill().getFillBkgnd().setValue("#ff00ff");
rectangle.getFill().getFillForegnd().setValue("#ebf8df");

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Agregue una forma de texto a un diagrama de Visio en Node.js

Aspose.Diagram también le permite agregar texto a los diagramas de Visio. En este caso, el texto se agrega como una forma. Los siguientes son los pasos para agregar texto a un diagrama de Visio.

  • Cree un nuevo diagrama de Visio usando la clase Diagram.
  • Agregue forma de texto al diagrama usando el método Diagram.getPages().getPage(0).addText().
  • Guarde el diagrama usando el método Diagram.save().

El siguiente ejemplo de código muestra cómo agregar forma de texto al diagrama de Visio en Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

// Establecer parámetros
PinX = 1, PinY = 1, Width = 1, Height = 1;
text = "Test text";

// Agregar texto a una página de Visio
diagram.getPages().getPage(0).addText(PinX, PinY, Width, Height, text);

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Los hipervínculos en los diagramas de Visio se pueden usar para navegar de una página a otra o para vincular un archivo o una página web al dibujo. Los siguientes son los pasos para agregar un hipervínculo a un diagrama de Visio.

  • Cree un nuevo diagrama de Visio.
  • Seleccione la página deseada del diagrama.
  • Seleccione la Forma deseada de la página seleccionada.
  • Cree un nuevo hipervínculo utilizando la clase Hipervínculo y establezca sus propiedades.
  • Agregue el hipervínculo a la forma usando el método Shape.getHyperlinks().add().
  • Guarde el diagrama.

El siguiente ejemplo de código muestra cómo agregar un hipervínculo a un diagrama de Visio en Node.js.

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

page = diagram.getPages().getPage(0);
// Obtener forma por ID
shape = page.getShapes().getShape(2);

// Inicializar objeto de hipervínculo
hyperlink = new aspose.diagram.Hyperlink();
// Establecer valor de dirección
hyperlink.getAddress().setValue("http://www.google.com/");
// Establecer valor de subdirección
hyperlink.getSubAddress().setValue("Sub address here");
// Establecer valor de descripción
hyperlink.getDescription().setValue("Description here");
// Escoger un nombre
hyperlink.setName("MyHyperLink");

// Agregar hipervínculo a la forma
shape.getHyperlinks().add(hyperlink); 

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Conclusión

En este artículo, ha aprendido a crear diagramas/dibujos de Visio desde cero en aplicaciones Node.js. El tutorial paso a paso y los ejemplos de código mostraron cómo agregar patrón, páginas, formas, texto e hipervínculos en el diagrama de Visio con unas pocas líneas de código. Puede explorar más sobre la API de Visio para Node.js utilizando la documentación.

Artículos relacionados