Conversions de formats d'images
Sur cette page je synthétise les astuces que j'ai trouvées pour parvenir à exporter dans les formats que je veux à partir d'un logiciel donné. J'ai une nette préférence pour les formats vectoriels, surtout quand il s'agit de produire des documents, c'est pourquoi je passe parfois par des techniques détournées pour parvenir à mes fins plutôt que d'utiliser un export bitmap qui fonctionne bien dans l'immense majorité des applications.
EPS vers PDF
Une seule commande :
epstopdf image.eps
Dans un Makefile, ça donne :
%.pdf : %.eps epstopdf $<
PDF vers EPS
Assez simple en deux commandes :
pdftops image.pdf ps2eps image.ps
Dans un Makefile, ça donne :
%.eps : %.pdf pdftops $< \ && ps2eps $(<:.pdf=.ps)
Dia vers PDF
L'export PDF de dia (version 0.97) fait n'importe quoi. Il faut donc passer par l'export EPS utilisant les polices Pango (avec les polices Latin1 c'est laid) :
- Fichier -> Exporter. En face de « Déterminer le type du fichier », choisir « PostScript encapsulé (EPS) utilisant les polices Pango (*.eps) »
- Une fois le fichier exporté, utiliser la commande epstopdf pour la convertir en PDF comme vu plus haut.
Dia vers Inkscape
Côté Inkscape
Inkscape (version 0.46, peut-être avant) sait ouvrir les fichiers *.dia. Le résultat est généralement satisfaisant, mais j'ai rencontré des soucis avec certains textes, qui perdaient leur apparence et avaient un comportement étrange quand je tentais modification (un texte multi-lignes dans Dia reste un seul bloc de texte dans Inkscape, mais les lignes se « fondent » lorsqu'on supprime les retours chariot… très étrange). Le plus simple est alors de copier le contenu du bloc de texte (sélectionner le bloc, puis Ctrl-x) et de créer un nouvel objet texte (cliquer n'importe où avec l'outil texte) et de coller le texte dedans (Ctrl-v) ; attention, les retours chariots sont supprimés et non remplacés par des espaces.
Autre possibilité, on peut exporter en PDF depuis Dia (via EPS, comme vu au paragraphe précédent), puis importer le PDF depuis Inkscape ; les textes conservent alors leur apparence, mais sont convertis en chemins et donc non modifiable via l'outil texte.
Côté Dia
Dia comporte également un export vers différentes variantes du format SVG :
- Graphique vectoriel Cairo (SVG) (*.svg) : donne a priori le même résultat que la technique « export PDF puis import dans Inkscape » décrite précédemment. À privilégier donc puisqu'on économise l'étape EPS.
- Scalable Vector Graphics (*.svg) : a priori exactement le même comportement que l'ouverture du fichier Dia depuis Inkscape, avec le même problème sur les textes.
- SVG plain (*.svg) : les textes multi-lignes dans Dia sont transformés en autant d'objets texte qu'il y a de lignes, mais la modification (ajout de texte notamment) reste toujours aussi problématique. De plus, l'apparence générale du diagramme est moins bien respectée. À déconseiller.
- SVG compressed (*.svgz) : même chose que le précédent, mais compressé.
En bref
Pour résumer :
- Le plus simple est d'ouvrir le fichier Dia depuis Inkscape.
- Si un problème se manifeste et que les textes n'ont pas besoin d'être retouchés, utiliser l'export « Graphique vectoriel Cairo (SVG) » depuis Dia, puis ouvrir le fichier SVG ainsi généré depuis Inkscape.
Netbeans UML vers vectoriel (non supporté)
J'utilise le module UML de Netbeans (version 6.0.1) pour créer mes diagrammes UML, mais il ne sait apparemment exporter qu'en bitmap (PNG). Enfin, il y a bien un export SVG, mais il s'agit en fait d'une image bitmap embarquée dans un SVG, autant dire que je n'ai jamais rien vu de plus stupide !
Si vous avez une méthode pour exporter dans un format vectoriel, faites-moi signe !
Logiciels ne posant pas problème
- Inkscape (0.46)
-
- L'export « PDF avec la librairie Cairo » fonctionne bien avec les options par défaut (PDF 1.4, Convertir les textes en chemins).
- L'export EPS fonctionne bien aussi, mais il faut cocher « Créer une boîte englobante autour de la page » pour que la mise en page soit respectée (sinon les objets en dehors de la page apparaîtront et l'image sera redimensionnée).
- XFig (3.2.5a)
- L'export EPS et PDF fonctionne bien.