Convertir SVG en PDF – Exemples C#
La conversion de documents SVG vers d’autres formats est l’une des principales fonctionnalités d’Aspose.SVG pour l’API .NET. La conversion est nécessaire pour diverses raisons : pour travailler dans un format familier et pratique ou pour profiter de différents formats pour des tâches spécifiques. PDF est un format de fichier pris en charge par tous les systèmes d’exploitation, utilisé pour présenter des images, des documents et des livres. Les fichiers PDF peuvent être facilement visualisés, imprimés et partagés en ligne.
L’article fournit des informations sur une liste des scénarios de conversion SVG en PDF pris en charge et sur la manière de les exécuter. Vous pouvez convertir SVG en PDF et d’autres formats populaires de n’importe quelle manière – en ligne ou par programme.
Convertisseur SVG en ligne
Vous pouvez vérifier la fonctionnalité de l’API Aspose.SVG et convertir SVG en temps réel. Veuillez charger SVG à partir du système de fichiers local, sélectionner le format de sortie et exécuter l’exemple. Dans l’exemple, les options de sauvegarde sont définies par défaut. Vous recevrez immédiatement le résultat dans un fichier séparé.
Si vous souhaitez convertir SVG en PDF par programme, veuillez consulter les exemples de code C# suivants.
Convertir SVG en PDF à l’aide de la méthode ConvertSVG()
Les méthodes statiques de la classe Converter peuvent convertir SVG en PDF avec une seule ligne de code. C’est le moyen le plus simple de conversion. La conversion d’un fichier vers un autre format à l’aide des méthodes ConvertSVG() est une séquence d’opérations parmi lesquelles le chargement et la sauvegarde du document :
- Chargez un document SVG en utilisant l’un des constructeurs SVGDocument() ( lineto.svg).
- Créez une instance de la classe PdfSaveOptions.
- Utilisez la méthode ConvertSVG() pour convertir et enregistrer SVG en tant que fichier PDF.
L’extrait de code suivant peut être utilisé pour convertir un fichier SVG au format PDF :
1using Aspose.Svg;
2using System.IO;
3using Aspose.Svg.Converters;
4using System.Drawing;
5using Aspose.Svg.Saving;
6...
7
8 // Initialize an SVG document from a file
9 using (var document = new SVGDocument(Path.Combine(DataDir, "lineto.svg")))
10 {
11 // Initialize an instance of the PdfSaveOptions class
12 var saveOptions = new PdfSaveOptions();
13 saveOptions.BackgroundColor = Color.Gray;
14
15 // Convert SVG to PDF
16 Converter.ConvertSVG(document, saveOptions, Path.Combine(OutputDir, "lineto_out.pdf"));
17 }
Le constructeur
PdfSaveOptions() initialise une instance de la classe PdfSaveOptions qui est transmise à la méthode ConvertSVG(). La méthode
ConvertSVG() prend le chemin du fichier de sortie document
, saveOptions
et effectue l’opération de conversion. Dans l’exemple ci-dessus, nous ajoutons la propriété BackgroundColor
qui définit Color
, qui remplira l’arrière-plan de chaque page.
Vous pouvez télécharger les exemples complets et les fichiers de données depuis GitHub. Vous découvrirez le téléchargement depuis GitHub et l’exécution d’exemples dans la section Comment exécuter les exemples.
Save Options
Vous pouvez convertir SVG en PDF à l’aide des options d’enregistrement par défaut ou personnalisées. L’utilisation de PdfSaveOptions ou PdfRenderingOptions vous permet de personnaliser le processus de rendu ; vous pouvez spécifier la taille de la page, les marges, la couleur d’arrière-plan, les autorisations de fichiers, Css, etc.
Property | Description |
---|---|
JpegQuality | Specifies the quality of JPEG compression for images. The default value is 95. |
Css | Gets a CssOptions object which is used for configuration of CSS properties processing. |
DocumentInfo | This property contains information about the output PDF document. |
BackgroundColor | This property sets the color that will fill the background of every page. By default, this property is Transparent. |
PageSetup | This property gets a page setup object and uses it for configuration output page-set. |
HorizontalResolution | Sets the horizontal resolution for output images in pixels per inch. The default value is 300 dpi. |
VerticalResolution | Sets the vertical resolution for output images in pixels per inch. The default value is 300 dpi. |
Encryption | This property gets or sets encryption details. If it is not set, then no encryption will be performed. |
Remarque : Les options implémentées avec la classe PdfSaveOptions héritent de la classe PdfRenderingOptions.
Convertir SVG en PDF à l’aide de la méthode RenderTo()
Considérez le scénario de conversion SVG en PDF à l’aide de la méthode RenderTo() :
- Initialiser un document à l’aide du constructeur SVGDocument() ( light.svg).
- Initialisez une instance de la classe PdfRenderingOptions et spécifiez les propriétés du document.
- Créez une nouvelle instance de la classe PdfDevice.
- Convertissez le document par la méthode RenderTo().
L’extrait de code suivant peut être utilisé pour convertir un fichier SVG au format PDF :
1using Aspose.Svg;
2using System.IO;
3using Aspose.Svg.Drawing;
4using Aspose.Svg.Rendering;
5using Aspose.Svg.Rendering.Pdf;
6...
7
8 // Initialize an SVG document from a file
9 using (var document = new SVGDocument(Path.Combine(DataDir, "light.svg")))
10 {
11 // Initialize an instance of the PdfRenderingOptions class and set custom PageSetup and JpegQuality properties
12 var pdfRenderingOptions = new PdfRenderingOptions();
13 pdfRenderingOptions.PageSetup.AnyPage = new Page(new Drawing.Size(500, 500), new Margin(10, 10, 10, 10));
14 pdfRenderingOptions.JpegQuality = 10;
15
16 // Initialize an instance of the PdfDevice class
17 using (IDevice device = new PdfDevice(pdfRenderingOptions, Path.Combine(OutputDir, "light_out.pdf")))
18 {
19 // Render SVG to PDF and send the document to the rendering device
20 document.RenderTo(device);
21 }
22 }
Le constructeur
PdfRenderingOptions() initialise un nouvel objet de la classe
PdfRenderingOptions qui est passé en argument au constructeur
PdfDevice(options, file
). Le dernier initialise une nouvelle instance de la classe
PdfDevice en rendant les options et le nom du fichier de sortie. La méthode
RenderTo(device
) convertit SVG en PDF et envoie le document actuel au périphérique de rendu de sortie.
Le JpegQuality
spécifie la qualité de la compression JPEG pour les images. La valeur par défaut est 95. Dans l’exemple ci-dessus, la valeur JpegQuality
utilisée est 10. La figure illustre la conversion SVG en PDF pour deux fichiers
light.svg et
lineto.svg : a) Le La valeur JpegQuality
est par défaut ; b) La valeur JpegQuality
est 10.
Vous pouvez convertir SVG en PDF avec notre Convertisseur SVG en PDF en ligne gratuit qui fonctionne de haute qualité, facilement et rapidement. Téléchargez, convertissez vos fichiers et obtenez des résultats en quelques secondes!