Converter SVG em PDF C#

Scalable Vector Graphics (SVG) e Portable Document Format (PDF) são dois formatos amplamente utilizados para criar e exibir gráficos e documentos. Às vezes, pode ser necessário converter um arquivo SVG em um documento PDF em seu aplicativo C#. Seguindo esses cenários, este artigo explica como converter SVG em PDF em C#.

Conversor SVG para PDF - Instalação da API C#

Para converter imagens SVG para o formato PDF, você precisa configurar Conholdate.Total for .NET na seção New Releases ou usar o seguinte comando de instalação do NuGet:

PM> NuGet\Install-Package Conholdate.Total

Converta SVG para PDF em C# usando o Conversor

Você pode converter arquivos SVG em PDF em C# seguindo as etapas abaixo:

  • Carregue o arquivo SVG de origem usando a classe SVGDocument.
  • Crie o objeto da classe PdfSaveOptions.
  • Defina a cor de fundo.
  • Converta documentos SVG em PDF.

O trecho de código abaixo explica como converter SVG em PDF em C#:

using (var document = new Aspose.Svg.SVGDocument("circle1.svg"))
{
    // Inicialize uma instância da classe PdfSaveOptions
    var saveOptions = new Aspose.Svg.Saving.PdfSaveOptions();
    saveOptions.BackgroundColor = System.Drawing.Color.Gray;

    // Converter SVG para PDF
    Aspose.Svg.Converters.Converter.ConvertSVG(document, saveOptions, Path.Combine(dataDir, "circle.pdf"));
}

Converta SVG para PDF em C# usando o dispositivo de renderização

Aqui está outra abordagem para renderizar SVG em formato de documento PDF. Siga as etapas abaixo para realizar a conversão com algumas chamadas de API:

  • Inicialize um documento SVG a partir de um arquivo.
  • Inicialize uma instância da classe PdfRenderingOptions e defina as propriedades PageSetup e JpegQuality personalizadas.
  • Inicialize uma instância da classe PdfDevice.
  • Renderize SVG para formato PDF.

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

// Inicialize um documento SVG a partir de um arquivo
using (var document = new Aspose.Svg.SVGDocument(Path.Combine(dataDir, "circle.svg")))
{
    // Inicialize uma instância da classe PdfRenderingOptions e defina propriedades personalizadas PageSetup e JpegQuality
    var pdfRenderingOptions = new Aspose.Svg.Rendering.Pdf.PdfRenderingOptions();
    pdfRenderingOptions.PageSetup.AnyPage = new Aspose.Svg.Drawing.Page(new Aspose.Svg.Drawing.Size(500, 500), new Aspose.Svg.Drawing.Margin(10, 10, 10, 10));
    pdfRenderingOptions.JpegQuality = 10;

    // Inicialize uma instância da classe PdfDevice
    using (Aspose.Svg.Rendering.IDevice device = new Aspose.Svg.Rendering.Pdf.PdfDevice(pdfRenderingOptions, Path.Combine(dataDir, "out.pdf")))
    {
        // Renderize SVG em PDF e envie o documento para o dispositivo de renderização
        document.RenderTo(device);
    }
}

Licença de avaliação gratuita

Você pode obter uma licença temporária gratuita para evitar as limitações de avaliação e testar a capacidade total da API.

Resumindo

A conversão de SVG para PDF pode ser uma funcionalidade útil em diversas aplicações, especialmente quando se trata de gráficos e documentação. Seguindo este guia, você aprendeu como converter arquivos SVG em documentos PDF usando C#. Ele permite que você incorpore o recurso de conversão de SVG para PDF em seus aplicativos .NET com diferentes abordagens. Caso você enfrente algum problema ou erro durante a conversão do arquivo, entre em contato conosco mencionando todos os detalhes no fórum.

Perguntas frequentes

Posso personalizar o processo de conversão?

Sim, você pode personalizar o processo de conversão. Você pode controlar aspectos como tamanho da página, layout, fontes, cores e muito mais no PDF gerado.

Há alguma limitação a ser observada?

Embora a conversão de SVG para PDF seja poderosa, pode haver algumas limitações com base na complexidade do conteúdo SVG. Recursos avançados de SVG, como animações, podem não ser traduzidos perfeitamente para PDF.

Há alguma consideração de desempenho?

A conversão de SVGs complexos em PDF pode exigir recursos computacionais significativos. Otimize seus SVGs quando possível e considere o processamento assíncrono para grandes lotes de conversões.

Como instalo as bibliotecas necessárias para conversão de SVG em PDF?

R: Você pode instalar as bibliotecas necessárias usando o NuGet Package Manager no Visual Studio. Procure e instale o pacote Conholdate.Total.

Veja também