yeKblog

Participer à un projet libre est un jeu... Et toi, à quoi tu joues ?

Aller au contenu | Aller au menu | Aller à la recherche

Keyword - inkscape

Fil des billets - Fil des commentaires

Post-it Inkscape : Réinitialiser le centre de rotation

Ce matin, j’ai eu le plaisir d’assister à quelques conférences de Grafik Labor.

logo2016grafiklabor.png

Grafik Labor est un événement proposé par l’AFGRAL, dont l’objectif est de fédérer autour des logiciels libres graphiques : des conférences Gimp, Blender, Inkscape, Scribus, Synfig, Gstreamer,… pour moi c’est un peu le paradis. Ça se déroulait le 2 et 3 juillet à Rennes et les locaux d’AFGRAL étaient complets, c’est vraiment cool de voir que le sujet intéresse plein de monde.

Ce matin, Elisa de C. Guerra présentait les bases de Inkscape. Je connais déjà assez bien ce soft puisque j’initie moi-même régulièrement mes collègues à l’utilisation de ce logiciel de dessin vectoriel. La conférence était donc très intéressante pour moi, non pas pour apprendre les bases mais pour voir comment Elisa, que je sais très bonne pédagogue, développe sa présentation, pour éventuellement m’en inspirer pour la forme, le rythme ou le contenu.

Une question s’est posée : Comment réinitialiser la position du centre de rotation ? C’est une question que je m’étais déjà posée sans jamais être suffisamment ennuyé pour chercher à la résoudre.

Quel est le problème ?

Lorsque vous cliquez deux fois avec l’outil de sélection sur un objet, vous faites apparaître les poignées de rotation et de cisaillement. Au centre de l’objet apparaît une croix : le centre de rotation.

Capture_du_2016-07-03_17-08-36.png

Il est possible de déplacer cette croix pour personnaliser l’axe de rotation mais comment faire pour replacer ce centre de rotation parfaitement au centre de l’objet si on l’a préalablement bougé ?

Quelles solutions ?

Une solution très simple proposée par un membre de l’assistance, ce matin, m’a intriguée et j’ai donc tenté de trouver une solution plus "correcte". Voici toutes les solutions que j’ai identifiées (la première est celle proposée, les deux autres sont celles que je viens de trouver, en bidouillant lors de la rédaction ce billet) :

  • Sélectionner l’objet et le grouper (Ctrl+G). Même si l’objet n’est groupé qu’à lui même, le centre de rotation n’est plus celui de l’objet mais celui du groupe, par défaut au centre donc… Ceci à l’avantage de permettre de réinitialiser le centre de rotation sans perdre définitivement le centre de rotation personnalisé.
  • Sélectionner l’objet et afficher l’éditeur XML (Maj+Ctrl+X), redéfinir à 0 les valeurs de inskscape:transform-center-x et inskscape:transform-center-y

Capture_du_2016-07-03_17-18-41.png

  • Tout simplement : Shift+clic gauche sur la croix (amusant de constater finalement qu’une solution très simple est disponible)

Dessin Inkscape dans Microsoft Office convertit en PDF

Il arrive régulièrement que mes collègues intègrent mes dessins (réalisés avec Inkscape) dans des fichiers qu’ils produisent avec Microsoft Office. Et tout se passe bien jusqu’à ce que le fichier soit converti en PDF : la transparence est mal interprétée ou le fichier devient très pixelisé. Évidemment, pour les collègues le problème vient de Inkscape !

Apparemment, je ne suis pas le seul à rencontrer le problème (mais très étrangement il n’est pas toujours question de Inkscape… la vérité est ailleurs).

  • Solution 1 : Convertir préalablement le PNG (seul format matriciel d’export de Inkscape) en JPG.
  • Solution 2 : Enregistrer le fichier SVG en EMF, importer ce dernier dans Microsoft Office, le PDF sera correct.

(Merci Gwennaël pour l’astuce 2)

Post-it: Miroir Inkscape

Dans Inkscape, il est facile de retourner un objet ou un ensemble d’objets :

  • horizontalement (Objet → Retourner horizontalement, raccourci : H)
  • verticalement (Objet → Retourner verticalement, raccourci : V)

Mais cet effet miroir s’applique à l’ensemble de la sélection et non à chaque objet indépendamment.

miroir_inkscape_opti.png

Si l’on souhaite appliquer cet effet à chaque objet séparément :

Objet → Transformer (Maj+Ctrl+M), Onglet « Dimensions » :

  • Largeur ou Hauteur = -100 %
  • Cocher la case « Appliquer à chaque objet séparément

Merci à Julien F. pour cette technique que je ne connaissais pas.

Textext dans Inkscape 0.91

Intégrer des formules LaTeX directement dans Inkscape est quasi indispensable pour les scientifiques utilisateurs de ce logiciel de dessin vectoriel. Il est possible de le faire directement via la menu Extensions → Rendu → LaTeX…. Si cette entrée n’est pas disponible, c’est qu’il manque une dépendance, mais tant qu’à installer celle-ci, profitez-en pour installer Textext, l’extension LaTeX plus complète qui permet de ré-éditer les équations.

Si vous téléchargez Textext directement depuis le site officiel alors que vous utilisez Windows le script ne se lancera pas. Il est nécessaire d’utiliser une version modifiée de Textext. J’ai trouvé cette version modifiée sur le net, j’en mets une copie ici car beaucoup des liens que j’ai trouvé ont tendance à renvoyer vers des 404… [sources : 1 2 3].

Windows

logo_windows.png

Choisissez les fichiers d’installation 32 ou 64 bits en fonction de votre système. Si vous ne savez pas lequel il vous faut : Clic droit sur l’icône Ordinateur (sur le Bureau ou dans le Menu Windows) → Propriétés, l’information est affichée dans Système : Type du système.

  1. Installer Miktex, Ghostscript, Ghostview, ImageMagick
  2. Installer pstoedit en personnalisant l’installation :
    1. Installation dans le dossier de Gostgum : C:\Program Files\Ghostgum\pstoedit
    2. Cocher : « .h and .lib files for using the pstoedit.dll in other programs » et « plugins SVG, MIF, EMF, CGM format (shareware) »
  3. Copier les fichiers textext.py et textext.inx dans : C:\Program Files\Inkscape\share\extensions
  4. Extraire site-packages.zip dans : C:\Program Files\Inkscape\python\Lib\site-packages
  5. Clic droit Ordinateur (sur le Bureau ou dans le Menu Windows) : Propriétés → Paramètres système avancés → Variables d'environnement… Dans Variables système → Path, ajouter :

;C:\Program Files\gs\gs9.15\lib;C:\Program Files\gs\gs9.15\bin;C:\Program Files\ghostgum\pstoedit

MacOS

logo_mac.png

  1. Installer pstoedit via Macports ou Fink
  2. Copier les fichiers textext.py et textext.inx dans le dossier : /Applications/Inkscape.app/Contents/Resources/extensions

GNU/Linux

logo_linux.png

  1. Installer les dépendances : texlive pstoedit pdf2svg
  2. Copier les fichiers textext.py et textext.inx dans le dossier : ~/.config/inkscape/extensions/ ou dans /usr/share/inkscape/extensions si vous souhaitez installer l’extension pour tous les utilisateurs.

Résoudre le conflit de raccourci Alt clic

Par défaut, dans Gnome, maintenir Alt et clic gauche enfoncé permet de déplacer une fenêtre. C'est peut-être aussi le cas dans d'autres gestionnaires de bureau…

Dans Gimp, dans Inkscape et certainement dans d'autres logiciels, Alt+Clic est utilisé pour certaines actions (par exemple, dans Inkscape, « Sélection de l'objet en dessous », fonction très pratique).

Ce conflit de raccourci ne semble pas intéresser grand monde. Je l'avais signalé il y a longtemps ici et ailleurs sans que cela ne déchaîne les passions.

Jusqu'à peu dans Ubuntu, pour résoudre ce conflit :

Système > Préférences > Fenêtres, "Touche de mouvement", sélectionner "Super (ou le logo Windows)"

Mais dans la dernière version de Ubuntu il n'y a plus cette fenêtre de configuration (il n'y a plus beaucoup de fenêtres de configuration d'ailleurs…) donc si ce problème de conflit vous importune et que vous souhaitez le résoudre, tout simplement en remplaçant Alt par Super, tapez :

gconftool-2 --set /apps/metacity/general/mouse_button_modifier --type string '<Super>'

Azimuth, une nouvelle icône, une !

Décidément il faut croire que ça m'amuse. Je viens de dessiner une nouvelle icône pour un projet libre. Après le script de moimael, après Phraymd, voici une icône pour Azimuth un logiciel de géolocalisation pour Maemo.

À l'origine, l'auteur de l'application m'a décrit l'application comme étant un petit prog qui publie ta position via XMPP. Cette description explique la première icône que j'ai dessinée. Mais après investigation un petit peu plus poussée, j'ai compris que pour l'instant elle se limitait au protocole XMPP mais que le but était d'étendre le procédé pour d'autres protocoles (telepahty power !). J'ai donc fait une deuxième icône inspirée des couleurs de Telepathy. Au final, c'est le troisième essai qui conviendra.

azymuth_all.png

Le logiciel est maintenant disponible en version 0.2 avec ma création :-D

azimuth-0-2.jpg

Dessiner cette icône ne m'a pas pris longtemps, elle va rendre service à Cassidy qui n'aura déjà plus ça à faire, il gagnera du temps, il en aura alors peut-être plus pour ses autres projets, améliorer Empathy par exemple, ce qui me rendra service à mon tour... Vous comprenez ? Aider un projet libre vous rend service que ce soit de manière directe ou indirecte !

Je suis intimement persuadé que tout le monde peut en faire autant, c'est un dessin très simple à faire avec un logiciel comme Inkscape. N'oubliez jamais que contribuer au développement d'un projet libre est un jeu...Et vous, à quoi vous jouez ?

Phraymd - Histoire d'une icône

Phraymd est un logiciel qui pourrait remplacer mon gestionnaire de photo favori (F-Spot) s'il était plus joli et s'il importait les tags de mes 13000 photos. Son développement est très actif, il est écrit en python, il contient certaines fonctionnalités que j'apprécie. Mais franchement, actuellement l'interface est contre intuitive et vraiment pas à mon goût.

À part l'interface, il y a autre chose de très peu esthétique : l'icône. On se doute en la voyant que celle-ci n'était pas la priorité de l'auteur. phraymd0.jpg

J'ai alors tenté de dessiner une icône rapidement pour la proposer au projet. Dessinée en 2 minutes avec inkscape, celle-ci était plus sympa et en un coup d'œil vous compreniez l'utilité du logiciel : phraymd1.jpg

Mais l'auteur du logiciel n'est pas convaincu par cette proposition. Il aimerait quelque chose en rapport avec le nom (Phraymd se prononce framed... en bref, le plus approprié serait un cadre photo, et Antistress me fait alors remarquer que le concept rappel le logo de Solang). À ce moment je commence à penser que les personnes qui font des logiciels libres sont des chieurs. Ils ont un truc pourri, tu leur proposes quelque chose de, certes, moyen et fait à l'arrache mais dans tous les cas beaucoup mieux que l'actuel, ils ne sont pas intéressés. Mais en même temps je me dis aussi que l'idée d'un cadre c'est sympa (Je garde l'idée des polaroid tout de même...). Mais pour compléter l'idée qui germe dans mon esprit j'ai besoin d'un paysage. Une petite recherche parmi mes anciens dessins me permet de trouver ce dont j'ai besoin. Il y a quelques temps j'ai dessiné une map pour Wormux dont le ciel était plutôt sympa, autant le réutiliser ! farmmap.jpg

Ce dessin était d'ailleurs lui-même inspiré de 2 dessins vieux de 3 ans provenant de Wormux. Les montagnes sont des modifications de montagnes dessinées par Olivier Milton et les nuages sont des modifications de ceux d'une carte dessinée par Jérémie Ledentu. image2826.png

Je m'amuse donc avec mon dessin pour obtenir plusieurs icônes potentielles. Je les propose au fur et à mesure des améliorations sans même attendre que l'auteur de Phraymd me dise si ça lui plait ou non, je ne fais plus ça vraiment pour son projet, je le fais parce que je commence à apprécier le dessin que j'obtiens... J'ai envie de l'améliorer, de peaufiner le rendu et je fini par être plutôt satisfait.

phraymd2.jpg phraymd3.jpg phraymd4.jpg

La dernière version semble plaire mais une icône a des besoins particuliers, il est nécessaire d'avoir un beau rendu en petite résolution. Alors j'ajoute une version supplémentaire, ou je n'utilise que les polaroids de coins. Il semble que cette icône et ce logo conviennent à Spillz qui l'intégrera peut-être dans la prochaine version de son logiciel. phraymd5.png

Il pourra alors remercier Antistress car c'est lui qui m'a sollicité lors d'un échange sur Phraymd où j'expliquais qu'à mon sens ce soft ne pourrait pas remplacer F-Spot dans ma liste de logiciels... c'est dire si c'était mal engagé...

Miniatures svgz dans Nautilus

Dans Inkscape, il est possible d'enregistrer un dessin vectoriel directement en svg compressé, il s'agit du format svgz. il n'est pas rare d'obtenir un rapport 5 entre un fichier svg normal et sa version compressée ! Le svgz n'est pas destructif, il conserve toute les informations de calques, groupes,... contrairement au svg simplifié qui ne réduit pas la qualité mais supprime toutes les informations d'édition. Le svgz est donc particulièrement intéressant quand vous avez de nombreux dessins, que vous devez les transférer ou les stocker sur un serveur par exemple.

Le problème de ce format c'est que dans Nautilus, le gestionnaire de fichiers de Gnome, il n'a pas de miniatures. Ces aperçus sont particulièrement importants lors d'une recherche de dessin parmi plusieurs dizaines de fichiers. Heureusement, ce problème est relativement facile à résoudre, quelques recherches sur internet, permettent, en effet, de trouver la méthode :

  1. Installer rsvg : sudo apt-get install librsvg2-bin
  2. Récupérer le fichier svgz-thumbnailer.schemas et l'installer : gconftool --install-schema-file=svgz-thumbnailer.schemas
  3. Supprimer les miniatures dont la construction a échoué : rm -r ~/.thumbnails/fail/gnome-thumbnail-factory/*

Et voilà. Vous pouvez maintenant visualiser directement vos dessins vectoriels compressés dans le navigateur de fichier.

svgz_miniatures.png

fichier svgz-thumbnailer.schemas :

<gconfschemafile>
   <schemalist>
       <schema>
           <key>/schemas/desktop/gnome/thumbnailers/image@svg@xml-compressed/enable</key>
           <applyto>/desktop/gnome/thumbnailers/image@svg@xml-compressed/enable</applyto>
           <owner>thumbnailer</owner>
           <type>bool</type>
           <default>true</default>
           <locale name="C">
               <short>Enable thumbnailing of image/svg+xml-compressed files</short>
               <long>Enable thumbnailing of image/svg+xml-compressed files</long>
           </locale>
       </schema>
       <schema>
           <key>/schemas/desktop/gnome/thumbnailers/image@svg@xml-compressed/command</key>
           <applyto>/desktop/gnome/thumbnailers/image@svg@xml-compressed/command</applyto>
           <owner>thumbnailer</owner>
           <type>string</type>
           <default>/usr/bin/rsvg-convert -w %s -h %s -o %o -a %i</default>
           <locale name="C">
                   <short>Command that creates a thumbnail</short>
                   <long>Command that creates a thumbnail (%o) for a filename (%i)</long>
           </locale>
       </schema>
   </schemalist>
</gconfschemafile>