Las imágenes de gráficos vectoriales escalables (SVG) son populares por su escalabilidad. Se utilizan con frecuencia en la web para mostrar información visual. En este artículo, aprenderá cómo crear un archivo de imagen SVG mediante programación usando C#. Las siguientes secciones cubren diferentes casos de uso:

Creador de imágenes SVG de C#: instalación de la API

Aspose.SVG for .NET La API se puede utilizar para crear, editar y manipular archivos de imagen SVG. Puede iterar diferentes nodos o convertir el archivo a formatos de archivo compatibles. Descargue los archivos DLL de la sección Nuevas versiones o use los siguientes comandos de instalación de NuGet:

PM> Install-Package Aspose.SVG

Después de configurar la API con éxito, puede aprender cómo crear una imagen SVG simple y básica y luego explorará más con la ayuda de un ejemplo avanzado.

Cree un archivo de imagen SVG mediante programación con C#

  1. Puede crear un archivo de imagen SVG con los siguientes pasos:
  2. Especifique el contenido SVG como una cadena.
  3. Inicialice un objeto de la clase SVGDocument del contenido de la cadena.
  4. Guarde el documento en un archivo con el método Save.

El siguiente código explica cómo crear un archivo de imagen SVG mediante programación usando C#:

// Especificar contenido SVG como cadena
string documentContent = "<svg xmlns=\"http://www.w3.org/2000/svg\"><circle cx=\"50\" cy=\"50\" r=\"40\" /></svg>";

// Inicialice un objeto de la clase SVGDocument desde el contenido de la cadena
SVGDocument document = new SVGDocument(documentContent, ".");

// Guardar el documento en un archivo
document.Save(dataDir + "test.svg", SVGSaveFormat.SVG);

Cree una imagen SVG con HTML incrustado mediante programación usando C#

SVG es compatible con todos los lenguajes basados en XML para describir y representar contenido incrustado. Puedes usar elemento para incluir contenido HTML en un archivo SVG. Siga los siguientes pasos para crear una imagen SVG con HTML incrustado:

  1. Especifique contenido SVG con HTML incrustado.
  2. Especifique el espacio de nombres XHTML desde el que se origina el objeto externo.
  3. Inicialice un documento SVG usando SVGDocument.
  4. Guarde el documento en un archivo con la enumeración SVGSaveFormat.

El siguiente código explica cómo crear una imagen SVG con contenido HTML incrustado mediante programación usando C#:

// Especifique contenido SVG con HTML incrustado.
// Especifique el espacio de nombres XHTML desde el que se origina el objeto externo.
string documentContent = "<svg viewBox =\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\">\n  <style>\n    div {\n      color: white;\n      font: 18px serif;\n      height: 100%;\n      overflow: hidden;\n    }\n  </style>\n \n  <polygon points=\"5,5 195,10 185,185 10,195\" />\n\n  <!-- Common use case: embed HTML text into SVG -->\n  <foreignObject x=\"20\" y=\"20\" width=\"160\" height=\"160\">\n    <!--\n      In the context of SVG embedded in an HTML document, the XHTML \n      namespace could be omitted, but it is mandatory in the \n      context of an SVG document\n    -->\n    <div xmlns=\"http://www.w3.org/1999/xhtml\">\n      Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n      Sed mollis mollis mi ut ultricies. Nullam magna ipsum,\n      porta vel dui convallis</div>\n  </foreignObject>\n</svg>";

// Inicialice un documento SVG usando SVGDocument.
SVGDocument document = new SVGDocument(documentContent, ".");

// Guarde el documento en un archivo con enumeración SVGSaveFormat.
document.Save(dataDir + "Test.svg", SVGSaveFormat.SVG);

Obtenga una licencia de API gratuita

Puede evaluar las API de Aspose sin limitaciones solicitando una Licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido cómo crear archivos de imagen SVG desde cero mediante programación usando C#. Ha explorado la creación de una imagen SVG simple, así como una imagen SVG avanzada con contenido HTML incrustado. Puede explorar más la API consultando la Documentación de la API. Además, en caso de cualquier consulta, no dude en contactarnos en el Foro de soporte gratuito.

Ver también