Question Application en ligne de commande pour la conversion de SVG en PNG sous Mac OS X


Existe-t-il des programmes de ligne de commande capables de convertir un fichier SVG en PNG, fonctionnant sous Mac OS X?

modifier: Dylan B a eu une bonne réponse avec ImageMagick. Pour référence, pour installer ImageMagick avec le support SVG sur Mac OS X en utilisant MacPorts, faites

port install imagemagick +rsvg

125
2018-04-26 01:53


origine


J'ai trouvé un moyen si vous avez Google Chrome ... et pas besoin d'installer d'autres choses: superuser.com/questions/134679/... - 太極者無極而生


Réponses:


Ou sans rien installer:

qlmanage -t -s 1000 -o . picture.svg 

Il produira picture.svg.png qui fait 1000 pixels de large.

Je l'ai testé uniquement sous OS X 10.6.3.


183
2018-05-17 13:32



Malheureusement, cela coupe les images sur une case. - Martijn Pieters
Ah, qlmanage -t donne la vignette utilisée par Quick Look (dans le Finder, etc.). Idée brillante. Malheureusement, ces vignettes peuvent être buggées, en particulier lorsque du texte est impliqué. - ShreevatsaR
Cela produit des images avec le fichier svg dans le 1er quadrant. Ne recadre pas automatiquement. Essayer de convertir des fichiers à partir d'un projet de nom - souhaite que cela fonctionne. - Alex Cook
Cette solution ne prend pas en compte la transparence. L'outil rsvg-convert La réponse de in @ ahti a déjà fonctionné pour moi. - BenR
Mettre les paramètres de largeur et de hauteur après le -s l'option n'a pas fonctionné pour moi. Toujours le ramène à un carré. Très frustrant! - Erik van der Neut


J'ai trouvé que pour moi le meilleur outil pour le travail est rsvg-convert.

On peut le trouver en infusion avec brew install librsvg et est utilisé comme ceci:

rsvg-convert -h 32 icon.svg > icon-32.png

(Cet exemple crée un png haut de 32px. La largeur est déterminée automatiquement.


71
2018-02-28 20:47



C'est le seul qui a fonctionné pour moi sur Mavericks et commons.wikimedia.org/wiki/... - Aron Ahmadia
En fait, celui-ci a fonctionné, alors que ImageMagick convert émis des erreurs et omis de dissimuler un SVG complexe - Brice
C'est de loin la meilleure solution que j'ai trouvée pour OS X Yosemite +1! - Greg Martin
Cela a échoué pour certains de mes SVG, étrangement. le qlmanage La réponse a fonctionné pour tous mais a mis un fond blanc, ce que je ne veux pas. - sudo
Avec rsvg-convert, le .png résultant avait les bonnes dimensions, mais l'image est sortie en noir au lieu des couleurs d'origine. Avec qlmanage l'image est recadrée sur un carré. Toujours à la recherche d'une solution :-( - Erik van der Neut


ImageMagick est un extrêmement éditeur de ligne de commande polyvalent, qui rivaliserait probablement avec Photoshop s'il possédait, vous le savez, une interface graphique. Mais qui en a besoin de toute façon. : P

Quelque chose comme ce qui suit convertirait un fichier .svg en .png, après l'installation:

$ convert picture.svg picture.png

L'original .svg n'est pas supprimé.


34
2018-04-26 02:00



Il sorte de a une interface graphique, dans display. - Ignacio Vazquez-Abrams
Lorsque j'ai installé ImageMagick avec Fink, je ne pouvais pas convertir svg en png - il y avait des erreurs. Il s'est avéré que je devais également installer librsvg2-bin. - tst
Si librsvg2-bin n'est pas installé (comme sur OS X), cela échouera. Impossible de trouver un moyen de l'installer sur OS X. - John Sheehan
Cela ne fonctionnera pas correctement si vous souhaitez redimensionner le SVG car il génère des images floues. - Behrang
Il ne convertit pas tous les fichiers SVG correctement non plus; au moins qlmanage a obtenu toutes les parties de l'image. - Johan


Inkscape avec son interface de ligne de commande produit les meilleurs résultats pour moi:

/Applications/Inkscape.app/Contents/Resources/bin/inkscape --export-png output.png -w 1024 -h 768 input.svg

La bonne chose est que vous pouvez spécifier la taille de pixel exacte de l'image résultante, sans avoir à vous soucier de la densité.


25
2018-01-05 13:04



Cela fonctionne pour moi! - j'ai un SVG plus grand créé avec Inkscape - matheszabi
C'est la seule méthode qui a correctement rendu mon svg écrit à la main - Griffin
Convert ne génère pas de bons fichiers PNG à partir de SVG. Utiliser Inkscape est le meilleur moyen que j'ai trouvé jusqu'à présent. - ol_v_er
Cela fonctionne pour moi, mais crée des fichiers extrêmement flous. - Marcin
J'ai eu un problème pour trouver des fichiers alors lancez-le comme inkscape $(pwd)/logo.svg --export-png $(pwd)/logo.png - Andrei


OK, j'ai trouvé un moyen simple de le faire sur Mac si vous avez Google Chrome.

En une phrase, c'est pour voir le svg image dans une page Web (doit être dans un html fichier), faites un clic droit sur l'image et choisissez "Copier l'image" et collez-le dans l'application Aperçu.

Pas:

  1. Télécharger ou avoir le svg fichier dans votre disque dur, par exemple, somefile.svg
  2. Maintenant, dans le même dossier, créez simplement un fichier HTML tmp.html qui contient cette ligne: <img src="somefile.svg">
  3. Maintenant, ouvrez ce fichier HTML dans Google Chrome
  4. Vous devriez voir l'image. Maintenant, faites un clic droit sur l'image et choisissez "Copier l'image"
  5. Accédez à l'application Aperçu de Mac et sélectionnez, "File -> New from Clipboard"
  6. À présent File -> Save le fichier et vous avez le png fichier. (ou d'autres types de fichiers).

Ceci est testé sur le Chrome actuel (version 48.0) sur Mac OS X El Capitan.

Mettre à jour: Je ne suis pas sûr que cela soit dû à des restrictions imposées par Google Chrome. Je viens d'essayer un fichier SVG en utilisant Chrome 58.0, et je reçois une toute petite image de la méthode ci-dessus. Si vous voyez aussi ce cas, vous pouvez également utiliser

<img src="somefile.svg" style="height: 82vh; margin-top: 9vh; margin-left: 9vh">

et vous aurez une image à l’écran suffisamment bonne pour que vous puissiez faire une capture CmdDécalage4 ou CmdDécalage3 sur le Mac, par exemple. Assurez-vous de redimensionner votre fenêtre Chrome au maximum autorisé à l'écran.


11
2018-02-07 19:02



Solution intelligente! - Manu
Cela produit effectivement les meilleurs résultats pour moi, car il rend exactement le même que le navigateur. - Jason Haslam
l'image résultante était une très mauvaise résolution pour moi - Michael


Si vous voulez faire beaucoup à la fois, vous pouvez:

mogrify -format png *.svg

Il existe des options pour redimensionner, etc. à la volée aussi.


4
2018-04-10 14:12



mogrify est également égal à ImageMagick. - ShreevatsaR
Fonctionne très bien, mais brutalement lent. - Meekohi
-1? Quelqu'un pense que ce n'est pas utile? Quelle est l'erreur? - DefenestrationDay
Je ne suis pas celui qui a refusé, mais il est intéressant de noter qu'ImageMagick convertit stupidement svg en une image raster de taille arbitraire avant le redimensionnement, ce qui entraîne une sortie floue. - Dae


Essayer Apache Batik.

java -jar batik-rasterizer.jar FILES

Il prend également en charge la conversion par lots et propose de nombreuses autres options utiles.


3
2018-05-23 03:05





j'ai fait svgexport en utilisant node / npm pour cela, il est multi-plateforme et peut être aussi simple que:

svgexport input.svg output.png

2
2017-09-27 08:47



C'était le plus facile à utiliser et à retenir de loin. Aussi, le seul qui a produit un résultat correct dans mon cas. - Marko Grešak
la résolution qui en a résulté n'était pas géniale pour moi. - Michael