DépannageSVG en PNG

SVG en PNG : mauvaise taille, image floue ou vide ? Les solutions

ParDéveloppeur logiciel
Publié le 5 min de lecture
Un petit SVG flou devenant un PNG net, avec une coche

La plupart des mauvais résultats de conversion SVG en PNG viennent des informations de taille du fichier SVG, pas du convertisseur. L'outil dessine le SVG à la taille déclarée par le fichier : un fichier qui déclare une petite taille donne un PNG petit et flou.

Chaque problème ci-dessous a une cause en une ligne et une solution que vous pouvez appliquer en une minute dans un éditeur de texte.

Sur cette page
  1. Les problèmes en un coup d'œil
  2. Le PNG est trop petit ou flou
  3. Les proportions semblent fausses
  4. Des images ou des polices manquent
  5. Une erreur, ou aucun PNG
  6. La taille est plafonnée
  7. Les derniers réglages
  8. Problèmes SVG en PNG : FAQ

À retenir

  • La taille du PNG est fixée par la largeur et la hauteur du SVG, puis par sa viewBox, puis par une valeur par défaut de 800 × 600.
  • Pour obtenir un PNG plus grand, augmentez la largeur et la hauteur dans le SVG, car une image matricielle ne s'agrandit pas proprement après coup.
  • Les images ou polices que le SVG charge depuis Internet ou depuis des fichiers séparés ne se chargent pas pendant la conversion.
  • Un fichier qui n'est pas un SVG valide échoue avec une erreur au lieu de produire un PNG.

Les problèmes en un coup d'œil

Symptômes, causes et solutions
SymptômeCauseSolution
Le PNG est minuscule ou flouLe SVG déclare une petite taille ou seulement une petite viewBoxIndiquer une largeur et une hauteur plus grandes dans le SVG
Le PNG est coupé ou ses proportions sont étrangesLa largeur et la hauteur ne correspondent pas au dessinLes accorder aux proportions de la viewBox
Les images liées manquentLes fichiers externes ne sont pas chargésIntégrer les images dans le SVG
Police différenteLa police n'est pas disponible dans le navigateurVectoriser le texte
Erreur ou aucun résultatLe fichier n'est pas un SVG valideL'ouvrir dans un navigateur ou un éditeur et le réparer

Le PNG est trop petit ou flou

Les icônes sont souvent enregistrées avec seulement une viewBox comme 0 0 24 24, sans largeur ni hauteur. Le convertisseur produit alors une image de 24 × 24 pixels, qui paraît floue dès qu'on l'affiche en plus grand. Un PNG ne peut pas être agrandi sans perdre en netteté : corrigez donc la taille avant de convertir.

  1. Ouvrez le SVG dans un éditeur de texte. La première ligne commence par une balise svg.
  2. Ajoutez ou modifiez width et height avec la taille voulue, par exemple width="512" height="512". Gardez les proportions de la viewBox.
  3. Enregistrez le fichier et convertissez-le de nouveau.

Les proportions semblent fausses

Si la largeur et la hauteur sont définies mais ne correspondent pas à la forme de la viewBox, le dessin est tracé dans un cadre d'une autre forme. Gardez le même rapport : une viewBox de 0 0 200 100 va avec des tailles comme 400 × 200 ou 1000 × 500.

Des images ou des polices manquent

Un SVG qui fait référence à une image ou à une police par un nom de fichier ou une adresse web ne l'emporte pas avec lui. Quand le navigateur dessine un SVG comme une image pour la conversion, ces ressources extérieures ne sont pas chargées : l'image apparaît vide et le texte prend une police par défaut.

  • Images : intégrez-les dans le SVG en données base64, ou exportez de nouveau le SVG avec les images intégrées plutôt que liées.
  • Polices : vectorisez le texte (en contours ou tracés) dans votre logiciel de création avant d'enregistrer le SVG.
  • Comparez : ouvrez d'abord le SVG dans un navigateur. Ce que vous y voyez est ce que le convertisseur dessinera, moins les ressources qui dépendent d'Internet.

Les mêmes causes s'appliquent à la conversion en JPG, traitée dans SVG en JPG : problèmes et solutions.

Une erreur, ou aucun PNG

Le convertisseur lit d'abord le fichier comme du XML. Une balise fermante manquante, un caractère parasite avant la balise d'ouverture, ou un fichier qui est en réalité du HTML ou un autre format le font échouer. Ouvrez le fichier dans un navigateur : s'il affiche un message d'erreur au lieu du graphique, réparez le code ou exportez un nouveau SVG.

La taille est plafonnée

Les très grands SVG sont réduits pour que leur plus grand côté ne dépasse pas 4096 pixels. Cela évite au navigateur de manquer de mémoire. Si vous avez besoin d'une image matricielle plus grande, considérez 4096 pixels comme le maximum, ou exportez plutôt le visuel au format d'impression depuis votre logiciel de création.

Les derniers réglages

Une fois le PNG correct, Redimensionner une image peut le réduire pour un formulaire d'envoi précis, et le Compresseur d'images allège le fichier. Pour les étapes de base, voyez comment convertir un SVG en PNG.

Problèmes SVG en PNG : FAQ

Pourquoi mon PNG est-il si petit ?

Le SVG n'a probablement qu'une petite viewBox, sans largeur ni hauteur. Ajoutez la taille voulue au fichier SVG et convertissez de nouveau.

Puis-je agrandir le PNG après la conversion ?

Vous pouvez l'agrandir, mais il paraîtra flou. Fixez plutôt la taille dans le SVG, pour que le convertisseur le dessine net à la taille voulue.

Pourquoi les images de mon SVG manquent-elles ?

Les images liées ne sont pas chargées pendant la conversion. Intégrez-les dans le SVG.

Pourquoi le texte utilise-t-il une autre police ?

La police n'est pas disponible dans le navigateur. Vectorisez le texte avant d'enregistrer le SVG.

Quel est le plus grand PNG possible ?

Le plus grand côté est limité à 4096 pixels.

Que se passe-t-il si le SVG n'a aucune taille ?

Le convertisseur utilise 800 × 600 pixels.

Pourquoi ai-je une erreur ?

Le fichier n'est probablement pas un SVG valide. Ouvrez-le dans un navigateur ou un éditeur, réparez le code et réessayez.

Le fond est-il blanc ou transparent ?

Transparent. Utilisez SVG en JPG si vous voulez un fond blanc.

Corrigez le SVG, puis convertissez

Presque tous les problèmes viennent de la taille ou des ressources liées du fichier SVG. Une petite modification du fichier vous donne le PNG attendu.

À lire ensuite