Det är dags att tillkännage tillägget av C# SVG-biblioteket till vår produktlinje - Aspose.SVG for .NET. Det är ett .NET-klassbibliotek som låter dig skapa, redigera, läsa och konvertera SVG-filer programmatiskt med C# i .NET- eller .NET Core-baserade applikationer. Låt oss ta en snabb promenad genom installationsmetoderna och framträdande funktionerna i API:t.
C# .NET SVG API - Installation
Aspose.SVG för .NET DLL kan laddas ner från vår Nedladdningar sektion. Å andra sidan kan du installera den via NuGet Package Manager eller Package Manager Console i Visual Studio.
NuGet Package Manager
Package Manager Console
PM> Install-Package Aspose.SVG
Låt oss nu ta en titt på några framträdande funktioner i API:et för att hantera SVG-filer.
Skapa en SVG-fil med C#
Aspose.SVG för .NET låter dig skapa en tom fil med en SVG-struktur. Dessutom kan du också skapa en SVG-fil från en användardefinierad sträng. API:et tillhandahåller klassen SVGDocument för att skapa SVG-filer och du kan vidare använda detta objekt för att fylla dokumentet med SVG-element. När du är klar kan du spara filen med metoden SVGDocument.Save(). Följande kodexempel visar hur man skapar en SVG-fil från början.
Skapa tom SVG-fil i C#
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-svg/Aspose.SVG-for-.NET
using (var document = new SVGDocument())
{
// gör några åtgärder över dokumentet här...
}
Skapa SVG med användardefinierad sträng i C#
// För fullständiga exempel och datafiler, gå till 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>", "."))
{
// gör några åtgärder över dokumentet här...
}
Redigera SVG-filer i C#
Aspose.SVG för .NET låter dig också redigera SVG-filerna för att uppdatera deras innehåll. API:s dataobjektmodell kartlägger effektivt SVG:s officiella specifikationer för att komma åt och redigera SVG-noder och deras element. Följande kodexempel visar hur man redigerar en SVG-fil i C#.
// För fullständiga exempel och datafiler, gå till 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);
}
Läs SVG-filer i C#
Om du skulle vilja läsa en befintlig SVG-fil kan du ladda den med klassen SVGDocument. Skapa helt enkelt ett nytt objekt och initiera det med SVG-filens sökväg som visas i följande kodexempel.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();
using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
// gör några åtgärder över dokumentet här...
}
Konvertera SVG-filer till PSD, XPS eller rasterbilder
Du kan också konvertera SVG-filerna till olika andra filformat. De omvandlingar som stöds inkluderar:
- SVG till PDF
- SVG till XPS
- SVG till bild (JPEG, PNG, BMP, GIF, TIFF)
Följande kodexempel visar hur man konverterar en SVG-fil till PDF i C#.
// För fullständiga exempel och datafiler, gå till 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);
}
}
För kodexempel av SVG till XPS och SVG till bild, besök Konvertera SVG-filer i C#.
Läs mer om .NET SVG API
Du kan utvärdera API:s funktioner genom att ladda ner exempelprojektet. För mer information, se dokumentationen för API:et. Om du skulle ha några frågor eller funderingar är du välkommen att meddela oss via vårt forum.