Convertir SVG en JPG en Java

Dans cet article, vous apprendrez à convertir un SVG en JPG avec Aspose.HTML for Java et à appliquer ImageSaveOptions. Vous pouvez facilement utiliser les exemples Java pour convertir SVG en JPG, qui sont également détaillés ici pour convertir SVG en PNG, BMP, GIF et TIFF. Il suffit de définir le ImageFormat requis dans ImageSaveOptions !

La conversion de SVG vers tout format d’image pris en charge suit les étapes obligatoires :

Pour spécifier le format de l’image de sortie, utilisez la classe ImageSaveOptions. Le constructeur ImageSaveOptions(format) initialise l’objet d’options avec le format spécifié. Vous pouvez définir le format d’image sur JPG, PNG, BMP, TIFF et GIF. Le ImageFormat par défaut est PNG.

Convertir SVG en JPG en quelques lignes de code

La conversion de SVG en JPG vous donne une image raster facile à partager, afficher ou envoyer par e-mail. Les méthodes statiques de la classe Converter sont principalement utilisées comme moyen le plus simple de convertir un code SVG en divers formats. Vous pouvez convertir SVG en JPG dans votre application Java en seulement quelques lignes de code !

Dans l’exemple, nous utilisons la méthode convertSVG(content, baseUri, options, outputPath) de la classe Converter qui prend quatre paramètres : la chaîne contenant le code SVG à convertir, le dossier de base pour le fichier SVG d’entrée, une instance de la classe ImageSaveOptions, et le chemin du fichier de sortie où l’image convertie sera enregistrée :

1// Prepare SVG code
2String code = "<svg xmlns='http://www.w3.org/2000/svg'>\n" +
3        "<circle cx='50' cy='50' r='40' stroke='black' stroke-width='3' fill='red' />\n" +
4        "</svg>\n";
5
6// Invoke the convertSVG() method to convert SVG to image
7Converter.convertSVG(code, ".", new ImageSaveOptions(ImageFormat.Jpeg), "output.jpg");

Convertir SVG en JPG

Les fichiers SVG sont excellents pour les graphiques de sites web, mais tous les navigateurs ne les prennent pas en charge. La conversion de SVG en JPG garantit que l’image se chargera correctement dans n’importe quel navigateur, offrant ainsi une meilleure expérience utilisateur. De plus, les images JPG sont faciles à partager, envoyer par e-mail, intégrer dans des rapports ou présentations, etc. Dans l’exemple Java suivant, nous détaillons les étapes pour convertir SVG en JPG avec les options d’enregistrement par défaut :

  1. Charger un fichier SVG. Vous pouvez charger un SVG à partir d’un fichier, d’un code SVG ou d’une URL. Dans l’exemple suivant, nous préparons un code SVG pour créer un SVG à partir de zéro et utilisons le constructeur SVGDocument() pour initialiser une instance SVGDocument.
  2. Utiliser le constructeur ImageSaveOptions() pour créer un nouvel objet ImageSaveOptions.
  3. Appeler l’une des méthodes convertSVG() de la classe Converter pour enregistrer le SVG au format JPG. Dans l’exemple, nous utilisons la méthode convertSVG(document, options, outputPath).

L’extrait de code Java suivant montre comment convertir SVG en JPG avec Aspose.HTML for Java :

 1// Prepare SVG code and save it to a file
 2String code = "<svg xmlns='http://www.w3.org/2000/svg'>\n" +
 3        "<circle cx='50' cy='50' r='40' stroke='black' stroke-width='3' fill='red' />\n" +
 4        "</svg>\n";
 5try (java.io.FileWriter fileWriter = new java.io.FileWriter("document.svg")) {
 6    fileWriter.write(code);
 7}
 8
 9// Initialize an SVG document from the SVG file
10SVGDocument document = new SVGDocument("document.svg");
11
12// Initialize ImageSaveOptions
13ImageSaveOptions options = new ImageSaveOptions(ImageFormat.Jpeg);
14
15// Convert SVG to JPG
16Converter.convertSVG(document, options, "output.jpg");

Options d’enregistrement – Classe ImageSaveOptions

La classe ImageSaveOptions fournit des méthodes permettant de contrôler un large éventail de paramètres et d’améliorer le processus de conversion de SVG vers des formats d’image. Vous pouvez spécifier le format d’image, la taille de page, les marges, le niveau de compression, le type de média, etc.

MéthodeDescription
setCompression(value)Définit la compression TIFF (Tagged Image File Format). Par défaut, cette propriété est Compression.LZW.
getCssObtient un objet CssOptions utilisé pour configurer le traitement des propriétés CSS.
setFormat(value)Définit le format d’image (JPG, PNG, BMP, TIFF ou GIF). Par défaut, cette propriété est ImageFormat.Png.
setBackgroundColor(value)Définit la couleur qui remplira l’arrière-plan de chaque page. La valeur par défaut est Color.Transparent(Color.getTransparent()).
setPageSetup(value)Obtient un objet de configuration de page utilisé pour configurer le jeu de pages de sortie.
setHorizontalResolution(value)Définit la résolution horizontale des images de sortie en pixels par pouce. La valeur par défaut est 300 dpi.
setVerticalResolution(value)Définit la résolution verticale des images de sortie en pixels par pouce. La valeur par défaut est 300 dpi.
setSmoothingMode(value)Définit la qualité de rendu pour cette image.
getText()Obtient un objet TextOptions utilisé pour configurer le rendu du texte.

Vous pouvez télécharger les exemples complets et les fichiers de données depuis GitHub.

Pour en savoir plus sur ImageSaveOptions, veuillez lire l’article Ajustement fin des convertisseurs.

Convertir SVG en JPG avec ImageSaveOptions

Si votre scénario nécessite le rendu d’un document SVG, par exemple au format JPG avec des options d’enregistrement personnalisées, l’exemple suivant montre à quel point c’est simple :

  1. Charger un fichier SVG à l’aide de la classe SVGDocument.
  2. Créer un nouvel objet ImageSaveOptions et spécifier les options d’enregistrement requises. Dans l’exemple suivant, nous appliquons une taille de page personnalisée, définissons le mode de lissage et la couleur d’arrière-plan pour l’image JPG résultante :
    • Utiliser les méthodes de la classe Page pour configurer la page de sortie.
    • Utiliser la méthode setBackgroundColor() pour définir la couleur d’arrière-plan de chaque page.
    • Utiliser la méthode setSmoothingMode() pour définir une qualité de lissage d’image élevée.
  3. Utiliser la méthode convertSVG(sourcePath, options, outputPath) de la classe Converter pour enregistrer le SVG en image JPG.
 1// Prepare SVG code and save it to a file
 2String code =
 3        "<svg width=\"450\" height=\"450\" xmlns=\"http://www.w3.org/2000/svg\">" +
 4        "    <g fill=\"RoyalBlue\">" +
 5        "        <rect x=\"100\" y=\"100\" rx=\"25\" ry=\"25\" width=\"200\" height=\"56\" />" +
 6        "        <rect x=\"100\" y=\"100\" rx=\"25\" ry=\"25\" width=\"200\" height=\"56\" transform =\"rotate(90 200 128)\" />" +
 7        "        <rect x=\"100\" y=\"100\" rx=\"25\" ry=\"25\" width=\"200\" height=\"56\" transform =\"rotate(-45 200 128)\" />" +
 8        "        <rect x=\"100\" y=\"100\" rx=\"25\" ry=\"25\" width=\"200\" height=\"56\" transform =\"rotate(45 200 128)\" />" +
 9        "    </g>" +
10        "    <circle cx=\"200\" cy=\"128\" r=\"28\" stroke=\"pink\" stroke-width=\"50\"  stroke-dasharray=\"3 13\" fill=\"Orange\" />" +
11        "    <circle cx=\"200\" cy=\"128\" r=\"5\" />" +
12        "</svg>";
13
14try (java.io.FileWriter fileWriter = new java.io.FileWriter("flower.svg")) {
15    fileWriter.write(code);
16}
17
18// Initialize ImageSaveOptions and set up smoothing mode, page size, and background color
19ImageSaveOptions options = new ImageSaveOptions(ImageFormat.Jpeg);
20PageSetup pageSetup = new PageSetup();
21options.setSmoothingMode(SmoothingMode.HighQuality);
22Page anyPage = new Page();
23anyPage.setSize(new Size(Length.fromPixels(200), Length.fromPixels(200)));
24pageSetup.setAnyPage(anyPage);
25options.setPageSetup(pageSetup);
26options.setBackgroundColor(Color.getAliceBlue());
27
28// Call the convertSVG() method to convert the "flower.svg" file to a JPEG image
29Converter.convertSVG("flower.svg", options, "flower.jpg");

Vérifiez la qualité de la conversion SVG en JPG avec notre Convertisseur SVG en JPG en ligne. Téléversez, convertissez vos fichiers et obtenez le résultat en quelques secondes. Essayez dès maintenant notre puissant convertisseur SVG en JPG gratuitement !

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.