Deseja converter imagens SVG em documentos PDF? Se assim for, você está no lugar certo. Este artigo mostrará como converter SVG para PDF em C# seguindo algumas etapas simples.
SVG (Scalable Vector Graphics) é um tipo de arquivo de padrão aberto que funciona independentemente da resolução. É um formato baseado em XML que usa gráficos vetoriais e suporta animação limitada. Arquivos SVG são apenas arquivos XML, então qualquer editor de texto pode editá-los. A maioria dos navegadores modernos oferece suporte a arquivos SVG e é capaz de renderizar sua marcação. Em certos casos, podemos precisar exportar imagens SVG para documentos PDF.
PDF é o formato de documento mais amplamente utilizado. Ele mantém a formatação original intacta, por isso é tão popular. Podemos facilmente converter documentos SVG para o formato PDF programaticamente. Então vamos começar!
Os seguintes tópicos serão abordados neste artigo:
API C# para converter SVG em PDF
Para converter SVG em PDF, usaremos a API Aspose.SVG for .NET. A API fornece uma maneira fácil de carregar, analisar, renderizar, criar e converter arquivos SVG em formatos populares sem quaisquer dependências de software.
A API fornece a classe SVGDocument que representa a raiz da hierarquia SVG e contém todo o conteúdo. A classe PdfSaveOptions permite especificar as opções de salvamento do PDF. Temos o método Converter.ConvertSVG(SVGDocument, PdfSaveOptions, string) que converte fonte SVG em PDF. A classe PdfRenderingOptions representa opções de renderização para PdfDevice. A classe PdfDevice permite a renderização em um documento PDF.
Por favor, baixe a DLL da API ou instale-a usando NuGet.
PM> Install-Package Aspose.SVG
Converta SVG para PDF usando C#
Podemos converter facilmente um arquivo de imagem SVG em PDF seguindo as etapas abaixo:
- Em primeiro lugar, carregue um SVG usando a classe SVGDocument.
- Em seguida, crie uma instância da classe PdfSaveOptions.
- Depois disso, especifique as opções de salvamento do PDF, como BackgroundColor, etc.
- Finalmente, chame o método Converter.ConvertSVG(). Ele usa SVGDocument, PdfSaveOptions e o caminho do arquivo PDF de saída como argumentos.
O exemplo de código a seguir mostra como converter SVG em PDF em C#.
// Este exemplo de código demonstra como converter SVG em PDF
// Carregar um documento SVG de um arquivo
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");
// Inicialize uma instância da classe PdfSaveOptions
var saveOptions = new PdfSaveOptions();
saveOptions.BackgroundColor = System.Drawing.Color.DarkBlue;
// Converter SVG para PDF
Converter.ConvertSVG(document, saveOptions, "C:\\Files\\Circles_out.pdf");
Renderizar SVG para PDF em C#
Como alternativa, podemos renderizar um SVG para um PDF seguindo as etapas abaixo:
- Em primeiro lugar, carregue um SVG usando a classe SVGDocument.
- Em seguida, crie uma instância da classe PdfRenderingOptions.
- Em seguida, especifique as opções de salvamento do PDF, como PageSetup, JpegQuality, etc.
- Depois disso, inicialize uma instância da classe PdfDevice. Ele usa PdfRenderingOptions e o caminho do arquivo PDF de saída como argumentos.
- Finalmente, chame o método RenderTo(). Leva PdfDevice como um argumento.
O exemplo de código a seguir mostra como renderizar SVG para PDF em C#.
// Este exemplo de código demonstra como renderizar SVG para PDF
// Carregar um documento SVG de um arquivo
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");
// Inicialize uma instância da classe PdfRenderingOptions
// Definir propriedades personalizadas PageSetup e JpegQuality
var pdfRenderingOptions = new PdfRenderingOptions();
pdfRenderingOptions.PageSetup.AnyPage = new Page(new Aspose.Svg.Drawing.Size(500, 500), new Margin(10, 10, 10, 10));
pdfRenderingOptions.JpegQuality = 10;
// Inicialize uma instância da classe PdfDevice
using (IDevice device = new PdfDevice(pdfRenderingOptions, "C:\\Files\\Render_out.pdf"))
{
// Renderize SVG para PDF e envie o documento para o dispositivo de renderização
document.RenderTo(device);
}
Obtenha licença temporária gratuita
Você pode obter uma licença temporária gratuita para experimentar o Aspose.SVG para .NET sem limitações de avaliação.
Conclusão
Neste artigo, aprendemos como:
- carregar uma imagem SVG existente;
- definir opções de salvamento de PDF;
- especificar opções de renderização de PDF;
- salve SVG como PDF em C#.
Além de converter SVG para PDF em C#, você pode aprender mais sobre Aspose.SVG para .NET usando documentação e explorar diferentes recursos suportados pela API. Em caso de ambiguidade, sinta-se à vontade para nos contatar em nosso fórum de suporte gratuito.