Convertir SVG en PDF en C#

Voulez-vous convertir des images SVG en documents PDF ? Si c’est le cas, vous êtes au bon endroit. Cet article vous montrera comment convertir SVG en PDF en C# en suivant quelques étapes simples.

SVG (Scalable Vector Graphics) est un type de fichier standard ouvert qui fonctionne quelle que soit la résolution. Il s’agit d’un format basé sur XML qui utilise des graphiques vectoriels et prend en charge une animation limitée. Les fichiers SVG ne sont que des fichiers XML, donc n’importe quel éditeur de texte peut les modifier. La plupart des navigateurs modernes prennent en charge les fichiers SVG et sont capables de restituer leur balisage. Dans certains cas, nous pouvons avoir besoin d’exporter des images SVG vers des documents PDF.

Le PDF est le format de document le plus utilisé. Il conserve la mise en forme d’origine intacte, c’est pourquoi il est si populaire. Nous pouvons facilement convertir des documents SVG au format PDF par programmation. Alors, commençons!

Les sujets suivants seront abordés dans cet article :

  1. API C# pour convertir SVG en PDF
  2. Convertir SVG en PDF
  3. Rendre SVG en PDF

API C# pour convertir SVG en PDF

Pour convertir SVG en PDF, nous utiliserons l’API Aspose.SVG pour .NET. L’API fournit un moyen simple de charger, d’analyser, de restituer, de créer et de convertir des fichiers SVG en formats populaires sans aucune dépendance logicielle.

L’API fournit la classe SVGDocument qui représente la racine de la hiérarchie SVG et contient l’intégralité du contenu. La classe PdfSaveOptions permet de spécifier les options d’enregistrement PDF. Nous avons la méthode Converter.ConvertSVG(SVGDocument, PdfSaveOptions, string) qui convertit la source SVG en PDF. La classe PdfRenderingOptions représente les options de rendu pour PdfDevice. La classe PdfDevice permet le rendu dans un document PDF.

Veuillez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.SVG

Convertir SVG en PDF en utilisant C#

Nous pouvons facilement convertir un fichier image SVG en PDF en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un SVG à l’aide de la classe SVGDocument.
  2. Ensuite, créez une instance de la classe PdfSaveOptions.
  3. Après cela, spécifiez les options d’enregistrement PDF telles que BackgroundColor, etc.
  4. Enfin, appelez la méthode Converter.ConvertSVG(). Il prend SVGDocument, PdfSaveOptions et le chemin du fichier PDF de sortie comme arguments.

L’exemple de code suivant montre comment convertir SVG en PDF en C#.

// Cet exemple de code montre comment convertir SVG en PDF
// Charger un document SVG à partir d'un fichier
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");

// Initialiser une instance de la classe PdfSaveOptions
var saveOptions = new PdfSaveOptions();
saveOptions.BackgroundColor = System.Drawing.Color.DarkBlue;

// Convertir SVG en PDF
Converter.ConvertSVG(document, saveOptions, "C:\\Files\\Circles_out.pdf");
Convertir-SVG-en-PDF-en-utilisant-CSharp

Convertissez SVG en PDF en utilisant C#.

Rendre SVG en PDF en C#

Alternativement, nous pouvons convertir un SVG en PDF en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un SVG à l’aide de la classe SVGDocument.
  2. Ensuite, créez une instance de la classe PdfRenderingOptions.
  3. Ensuite, spécifiez les options d’enregistrement PDF telles que PageSetup, JpegQuality, etc.
  4. Après cela, initialisez une instance de la classe PdfDevice. Il prend PdfRenderingOptions et le chemin du fichier PDF de sortie comme arguments.
  5. Enfin, appelez la méthode RenderTo(). Il prend PdfDevice comme argument.

L’exemple de code suivant montre comment rendre SVG en PDF en C#.

// Cet exemple de code montre comment rendre SVG en PDF
// Charger un document SVG à partir d'un fichier
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");

// Initialiser une instance de la classe PdfRenderingOptions 
// Définir les propriétés PageSetup et JpegQuality personnalisées
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;

// Initialiser une instance de la classe PdfDevice
using (IDevice device = new PdfDevice(pdfRenderingOptions, "C:\\Files\\Render_out.pdf"))
{
    // Rendre SVG en PDF et envoyer le document au périphérique de rendu
    document.RenderTo(device);
}

Obtenez une licence temporaire gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.SVG pour .NET sans limitations d’évaluation.

Conclusion

Dans cet article, nous avons appris à :

  • charger une image SVG existante ;
  • définir les options d’enregistrement PDF ;
  • spécifier les options de rendu PDF ;
  • enregistrer SVG au format PDF en C#.

Outre la conversion de SVG en PDF en C#, vous pouvez en savoir plus sur Aspose.SVG pour .NET à l’aide de documentation et explorer différentes fonctionnalités prises en charge par l’API. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également