Le immagini Scalable Vector Graphics (SVG) sono famose per la loro scalabilità. Sono spesso utilizzati sul Web per visualizzare informazioni visive. In questo articolo imparerai come creare un file immagine SVG a livello di codice usando C#. Le sezioni seguenti trattano diversi casi d’uso:

C# SVG Image Creator – Installazione API

L’API Aspose.SVG for .NET può essere utilizzata per creare, modificare e manipolare file di immagine SVG. È possibile eseguire l’iterazione di nodi diversi o convertire il file nei formati di file supportati. Scarica i file DLL dalla sezione Nuove versioni oppure utilizza i seguenti comandi di installazione di NuGet:

PM> Install-Package Aspose.SVG

Dopo aver configurato correttamente l’API, puoi imparare come creare un’immagine SVG semplice e di base e in seguito esplorerai ulteriormente con l’aiuto di un esempio avanzato.

Crea file immagine SVG a livello di codice con C#

  1. È possibile creare un file immagine SVG con i seguenti passaggi:
  2. Specifica il contenuto SVG come una stringa.
  3. Inizializza un oggetto della classe SVGDocument dal contenuto della stringa.
  4. Salva il documento in un file con il metodo Salva.

Il codice seguente spiega come creare un file di immagine SVG a livello di codice usando C#:

// Specifica il contenuto SVG come stringa
string documentContent = "<svg xmlns=\"http://www.w3.org/2000/svg\"><circle cx=\"50\" cy=\"50\" r=\"40\" /></svg>";

// Inizializza un oggetto della classe SVGDocument dal contenuto della stringa
SVGDocument document = new SVGDocument(documentContent, ".");

// Salva il documento in un file
document.Save(dataDir + "test.svg", SVGSaveFormat.SVG);

Crea un’immagine SVG con HTML incorporato a livello di codice usando C#

SVG è coerente con tutti i linguaggi basati su XML per la descrizione e il rendering del contenuto incorporato. Puoi usare elemento per includere contenuto HTML in un file SVG. Segui i seguenti passaggi per creare un’immagine SVG con HTML incorporato:

  1. Specifica il contenuto SVG con HTML incorporato.
  2. Specificare lo spazio dei nomi XHTML da cui ha origine l’oggetto estraneo.
  3. Inizializza un documento SVG utilizzando SVGDocument.
  4. Salva il documento in un file con l’enumerazione SVGSaveFormat.

Il codice seguente spiega come creare un’immagine SVG con contenuto HTML incorporato a livello di codice utilizzando C#:

// Specifica il contenuto SVG con HTML incorporato.
// Specificare lo spazio dei nomi XHTML da cui ha origine l'oggetto estraneo.
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>";

// Inizializza un documento SVG utilizzando SVGDocument.
SVGDocument document = new SVGDocument(documentContent, ".");

// Salva il documento in un file con l'enumerazione SVGSaveFormat.
document.Save(dataDir + "Test.svg", SVGSaveFormat.SVG);

Ottieni la licenza API gratuita

Puoi valutare le API Aspose senza alcuna limitazione richiedendo una Licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come creare file di immagine SVG da zero a livello di codice usando C#. Hai esplorato la creazione di una semplice immagine SVG e di un’immagine SVG avanzata con contenuto HTML incorporato. Puoi esplorare ulteriormente l’API dando un’occhiata all’API Documentazione. Inoltre, in caso di domande, non esitare a contattarci al Forum di supporto gratuito.

Guarda anche