API C# SVG, Criar editar arquivos SVG de conversão

É hora de anunciar a adição da biblioteca C# SVG à nossa linha de produtos - Aspose.SVG for .NET. É uma biblioteca de classes .NET que permite criar, editar, ler e converter arquivos SVG programaticamente usando C# em aplicativos baseados em .NET ou .NET Core. Vamos dar uma rápida olhada nos métodos de instalação e recursos importantes da API.

API C# .NET SVG - Instalação

Aspose.SVG para .NET DLL pode ser baixado em nossa seção Downloads. Por outro lado, você pode instalá-lo por meio do NuGet Package Manager ou do Package Manager Console no Visual Studio.

Gerenciador de pacotes NuGet

Biblioteca C# .NET SVG

Console do Gerenciador de Pacotes

PM> Install-Package Aspose.SVG

Vamos agora dar uma olhada em alguns recursos importantes da API para lidar com arquivos SVG.

Criar um arquivo SVG usando C#

Aspose.SVG para .NET permite criar um arquivo vazio com uma estrutura SVG. Além disso, você também pode criar um arquivo SVG a partir de uma string definida pelo usuário. A API fornece a classe SVGDocument para criar arquivos SVG e você ainda pode usar este objeto para preencher o documento com elementos SVG. Uma vez feito, você pode salvar o arquivo usando o método SVGDocument.Save(). Os exemplos de código a seguir mostram como criar um arquivo SVG do zero.

Criar arquivo SVG vazio em C#

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-svg/Aspose.SVG-for-.NET
using (var document = new SVGDocument())
{
    // faça algumas ações sobre o documento aqui... 
}

Criar SVG com string definida pelo usuário em C#

// Para exemplos completos e arquivos de dados, acesse 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>", "."))
{
    // faça algumas ações sobre o documento aqui... 
}

Editar arquivos SVG em C#

O Aspose.SVG para .NET também permite que você edite os arquivos SVG para atualizar seu conteúdo. O modelo de objeto de dados da API mapeia com eficiência as especificações oficiais do SVG para acessar e editar nós SVG e seus elementos. O exemplo de código a seguir mostra como editar um arquivo SVG em C#.

// Para exemplos completos e arquivos de dados, acesse 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);
}

Ler arquivos SVG em C#

Caso você queira ler um arquivo SVG existente, você pode carregá-lo usando a classe SVGDocument. Basta criar um novo objeto e inicializá-lo com o caminho do arquivo SVG, conforme mostrado no exemplo de código a seguir.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    // faça algumas ações sobre o documento aqui... 
}

Converta arquivos SVG para PSD, XPS ou imagens raster

Você também pode converter os arquivos SVG para vários outros formatos de arquivo. As conversões suportadas incluem:

  • SVG para PDF
  • SVG para XPS
  • SVG para imagem (JPEG, PNG, BMP, GIF, TIFF)

O exemplo de código a seguir mostra como converter um arquivo SVG em PDF em C#.

// Para exemplos completos e arquivos de dados, acesse 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);
    }
}

Para exemplos de código de SVG para XPS e SVG para imagem, visite Converting SVG Files in C#.

Saiba mais sobre a API .NET SVG

Você pode avaliar os recursos da API baixando o examples project. Para mais detalhes, consulte a documentação da API. Caso você tenha alguma dúvida ou pergunta, sinta-se à vontade para nos informar através do nosso fórum.

Veja também