Je travaille habituellement avec des SVG sous forme de fichiers texte, et j'aimerais donc que le visualisateur rafraîchisse automatiquement l'affichage dès que le fichier est sauvegardé (et que son contenu est modifié) - cela devrait s'appliquer aux situations "pipables", je pense (c'est-à-dire avec des pipes nommés).
Notez que, pour les applications Gnome par défaut :
-
evince
fonctionne actuellement comme cela pour les PDF, mais apparemment il ne peut pas lire les SVG (pour moi il génère " Unable to open document - Error opening file: Permission denied
"lorsque j'ai essayé de charger des fichiers SVG)
-
eog
(Eye Of Gnome) - les dernières versions - peut également détecter si un fichier a été modifié et proposer un bouton "Reload" ; mais apparemment, il faut toujours cliquer sur "Reload" à chaque fois (je ne vois pas comment provoquer un rechargement automatique en cas de modification d'un fichier dans eog
comme evince
se comporte avec les PDF) - et aussi, du moins sur mon Ubuntu 10.04, eog
La prise en charge du SVG est quelque peu défaillante (le zoom donne des résultats avec des lignes floues)
- La fonction
display
non seulement ne s'actualise pas automatiquement lorsque le fichier change sur le disque - et même lorsque vous appuyez sur la touche "refresh" dans la fenêtre display
vous le faites toujours pas obtenir la dernière version du fichier (ce qui signifie que vous devez redémarrer display
pour afficher la dernière version :( ).
Voici quelques notes supplémentaires que j'ai trouvées jusqu'à présent :
-
Squiggle, le navigateur SVG Le navigateur SVG qui fait partie de la boîte à outils Batik. - Télécharger Batik batik-1.7.zip ; décompressez-le ; exécutez
java -jar batik-squiggle.jar
et voilà ; ne rafraîchit pas l'image automatiquement si le fichier svg a changé sur le disque
-
SVG Image Viewer ? - Forums Ubuntu recommandations :
- En poste #8 - " J'ai écrit un petit script Python script ... Il suffit de l'exécuter sous la forme : svg_compare.py et il ouvre un svg et l'affiche en utilisant une bibliothèque svg et en utilisant la bibliothèque raster de gtk. Vous pouvez zoomer avec la souris... "
-
xsvg
(à partir de http://cairographics.org ) - J'ai installé libsvg1_0.1.4-1_i386.deb , libsvg-cairo1_0.1.6-5_i386.deb y xsvg_0.2.1-3_i386.deb dans cet ordre ; ces versions datent de 2005, et donc xsvg
est extrêmement simple - pas de zoom, rien. Et inutile de préciser qu'il ne réagit pas automatiquement aux modifications des fichiers enregistrés...
- par ce biais, j'ai trouvé
rsvg-view
qui, je pense, fait partie de la sudo apt-get install librsvg2-bin
. Il est petit, agréable, supporte stdin - cependant, il est aussi rsvg-view
ne peut pas détecter un changement de fichier et l'actualiser automatiquement .
J'espère que cela vous aidera...
Santé !
EDIT (24 déc. '10) : voici également ma contribution : svg_refreshview.py - qui est essentiellement un remaniement de svg_compare.py
mentionnée ci-dessus, qui affiche simplement un fichier SVG, recharge le fichier et rafraîchit l'affichage si le fichier a été modifié. ( il ne peut pas vraiment fonctionner avec stdin - mais il y a d'autres scripts dans mon repo qui analysent stdin en Python, peut-être qu'ils aideront ).
EDIT2 (20 mai 12) : J'ai aussi trouvé un exemple de script en Perl-Tk, qui est très rudimentaire ( pas d'interaction avec la souris, rien ), mais utilise l'API Perl ImageMagick, et peut donc rendre SVG (comme bitmap sur un canevas), voir answer #10670039 - ImageMagick API for command-line GUI application interface to display
- Stack Overflow (en anglais) .