C# SVG API, twórz, edytuj, konwertuj pliki SVG

Czas ogłosić dodanie biblioteki C# SVG do naszej linii produktów - Aspose.SVG for .NET. Jest to biblioteka klas .NET, która umożliwia programowe tworzenie, edytowanie, odczytywanie i konwertowanie plików SVG przy użyciu języka C# w aplikacjach opartych na platformie .NET lub .NET Core. Przyjrzyjmy się szybko metodom instalacji i najważniejszym funkcjom interfejsu API.

Interfejs API C# .NET SVG — instalacja

Aspose.SVG for .NET DLL można pobrać z naszej sekcji Downloads. Z drugiej strony możesz go zainstalować za pomocą Menedżera pakietów NuGet lub Konsoli Menedżera pakietów w Visual Studio.

Menedżer pakietów NuGet

Biblioteka C# .NET SVG

Konsola menedżera pakietów

PM> Install-Package Aspose.SVG

Rzućmy teraz okiem na niektóre istotne funkcje interfejsu API do obsługi plików SVG.

Utwórz plik SVG za pomocą C#

Aspose.SVG for .NET umożliwia utworzenie pustego pliku o strukturze SVG. Ponadto możesz także utworzyć plik SVG z ciągu zdefiniowanego przez użytkownika. API zapewnia klasę SVGDocument do tworzenia plików SVG i możesz dalej używać tego obiektu do wypełniania dokumentu elementami SVG. Po zakończeniu możesz zapisać plik za pomocą metody SVGDocument.Save(). Poniższe przykłady kodu pokazują, jak utworzyć plik SVG od podstaw.

Utwórz pusty plik SVG w C#

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-svg/Aspose.SVG-for-.NET
using (var document = new SVGDocument())
{
    // wykonaj kilka czynności na dokumencie tutaj ... 
}

Utwórz SVG z ciągiem zdefiniowanym przez użytkownika w C#

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-svg/Aspose.SVG-for-.NET
using (var document = new SVGDocument("<svg xmlns='http://www.w3.org/2000/svg'><circle cx='50' cy='50' r='40'/></svg>", "."))
{
    // wykonaj kilka czynności na dokumencie tutaj ... 
}

Edytuj pliki SVG w C#

Aspose.SVG for .NET umożliwia także edycję plików SVG w celu aktualizacji ich zawartości. Obiektowy model danych API skutecznie odwzorowuje oficjalne specyfikacje SVG, aby uzyskać dostęp i edytować węzły SVG i ich elementy. Poniższy przykładowy kod pokazuje, jak edytować plik SVG w języku C#.

// Pełne przykłady i pliki danych można znaleźć na stronie https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    const string @namespace = "http://www.w3.org/2000/svg";
    var circle = (SVGCircleElement)document.CreateElementNS(@namespace, "circle");
    circle.Cx.BaseVal.Value = 50;
    circle.Cy.BaseVal.Value = 50;
    circle.R.BaseVal.Value = 40;

    var g = document.QuerySelector("g");
    g.AppendChild(circle);

    Console.WriteLine(g.OuterHTML);
}

Czytaj pliki SVG w C#

Jeśli chcesz odczytać istniejący plik SVG, możesz go załadować za pomocą klasy SVGDocument. Po prostu utwórz nowy obiekt i zainicjuj go ścieżką pliku SVG, jak pokazano w poniższym przykładzie kodu.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    // wykonaj kilka czynności na dokumencie tutaj ... 
}

Konwertuj pliki SVG na obrazy PSD, XPS lub rastrowe

Możesz także konwertować pliki SVG na różne inne formaty plików. Obsługiwane konwersje obejmują:

  • SVG do PDF
  • SVG do XPS
  • SVG na obraz (JPEG, PNG, BMP, GIF, TIFF)

Poniższy przykładowy kod pokazuje, jak przekonwertować plik SVG na format PDF w języku C#.

// Pełne przykłady i pliki danych można znaleźć na stronie https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    var options = new PdfRenderingOptions()
    {
        PageSetup =
        {
            AnyPage = new Page(new Size(500, 500))
        }
    };
    using (var device = new PdfDevice(options, dataDir + "smiley_out.pdf"))
    {
        document.RenderTo(device);
    }
}

Przykłady kodu SVG do XPS i SVG do obrazu można znaleźć na stronie Converting SVG Files in C#.

Dowiedz się więcej o interfejsie API .NET SVG

Możesz ocenić funkcje API, pobierając przykładowy projekt. Aby uzyskać więcej informacji, zapoznaj się z dokumentacją interfejsu API. Jeśli masz jakieś pytania lub wątpliwości, daj nam znać za pośrednictwem naszego forum.

Zobacz też