Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/11/2010, à 03:01

roger64

Inkscape: remplacer une icone sous différente tailles

Bonjour

Je suis en train de bidouiller/modifier mon thème Humanity. Je tente donc de changer plusieurs icônes au format svg. Celles-ci sont déclinées en différente tailles soit depuis le 16, 22, 24, 32, 48, 64 jusqu'au 128 (sept tailles au total). Elles portent la mention svg+xml.

Je dispose d'icônes svg d'assez grande taille que j'ai sauvegardées avec Inkscape. Je ne connais pas par aileurs ce logiciel. Je voudrais les mettre en place dans chaque répertoire à la taille voulue.

Y a t-il une manip recommandée pour remplacer rapidement les icônes (une commande par exemple permettant de créer les sept petits nains)? 

Merci de vos infos.

Dernière modification par roger64 (Le 25/11/2010, à 05:06)

Hors ligne

#2 Le 25/11/2010, à 05:26

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Si j'utilise la commande dezoomer par exemple, l'image se transforme de la façon suivante:

12%   18%   25%   35%   50%   71%   100%

Mais comment obtenir les valeurs exactes pour 16, 22, 24, 32, 48, 64 et 128 ?

Ou alors, je dois me faire des noeuds au cerveau... smile

Hors ligne

#3 Le 25/11/2010, à 09:10

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Je comprends que ma question n'a pas l'air d'avoir du sens puisque les images vectorielles etc...

Voici ce que ça donne. Il y a clairement une question de taille et je ne sais pas la résoudre. J'aimerais mettre en place le fichier user-desktop.svg avec la ligne bleue. Mais il est nettement trop gros. Que dois -je faire ?

J'ai appelé .bak l'ancienne icône qui est censée être remplacée. Vous pouvez comparer les deux.

1290672627.png

Dernière modification par roger64 (Le 25/11/2010, à 09:11)

Hors ligne

#4 Le 25/11/2010, à 10:05

roger64

Re : Inkscape: remplacer une icone sous différente tailles

et voici les nouvelles icônes que je veux mettre en place, toutes au format svg.

Bien qu'elles aient la même taille apparente sur l'écran, leurs propriétés sont différentes, respectivement de la gauche vers la droite:
624x624    128x128   256x256   128x128   Insondables mystères....
1290675777.png

Dernière modification par roger64 (Le 25/11/2010, à 10:06)

Hors ligne

#5 Le 25/11/2010, à 15:44

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Il n'y a pas d'inkscapien distingué qui puisse me donner un conseil ? sad

Hors ligne

#6 Le 25/11/2010, à 16:41

roger64

Re : Inkscape: remplacer une icone sous différente tailles

J'ai mis le doigt sur l'aperçu d'icône (menu affichage) qui me fournit des images d'icônes aux formats 16, 24, 32, 48 et 128 mais je ne sais pas quoi en faire.

Hors ligne

#7 Le 26/11/2010, à 13:28

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Je n'ai pas réussi -pour le moment- donc j'ai exporté à partir du svg vers un format png pour chacune des sept tailles d'icônes.  4x7= 28. Il doit y avoir moins bestial... smile

Hors ligne

#8 Le 26/11/2010, à 13:45

Mathieu147

Re : Inkscape: remplacer une icone sous différente tailles

Je pige pas trop: la taille d'une icône, en vectoriel, ça n'a pas beaucoup d'importance… Qu'est-ce qu'il y a qui coince?

Ton icône user-desktop.svg a l'air plus petite simplement parce qu'elle ne remplit pas tout le canvas.


Pffff…

Hors ligne

#9 Le 26/11/2010, à 14:24

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Bonjour

Ce n'est pas clair non plus dans ma tête. Je t'invite à regarder le dossier /usr/share/icons/Humanity/mime.

Tu verras qu'il y a bien sept tailles différentes d'icônes et qu'il s'agit pourtant de fichiers svg.

Hors ligne

#10 Le 26/11/2010, à 14:43

Mathieu147

Re : Inkscape: remplacer une icone sous différente tailles

Peut-être qu'on peut utiliser plusieurs tailles différentes, sans y être obligé.

Par exemple dans une icône tu veux une ligne de 1px de large. Si tu fais cette ligne dans ton icône 32×32, alors dans ton icône 128×128, elle fera 4px de large et dans ton icône 16×16 elle sera à peine visible. Par contre, si tu as plusieurs tailles d'icônes, tu peux très bien, pour chaque taille, définir ta ligne à 1px.


Pffff…

Hors ligne

#11 Le 29/11/2010, à 11:38

poupoul2

Re : Inkscape: remplacer une icone sous différente tailles

roger64 a écrit :

Tu verras qu'il y a bien sept tailles différentes d'icônes et qu'il s'agit pourtant de fichiers svg.

Bonjour.

Du point de vue du SVG lui-même, ça n'a évidemment pas de sens. Ces fichiers, même s'ils "présentent" des tailles différentes, ont tous strictement le même contenu. On peut imaginer que certaines applications ont besoin de connaitre la taille et qu'il est donc nécessaire qu'elle soit fixée dans les fichiers.

Quant à la question de départ, ça n'est sans doute pas si trivial que ça. Ce qui est dimensionné en 16x16, 22x22..., c'est le canevas. Dans le fichier SVG, il s'agit de l'élément racine du XML, dans lequel on trouve ça :

<svg
...
   width="22"
   height="22"
   ...>

Ne modifier que ces valeurs doit être réalisable à l'aide d'un script, puisque le SVG n'est jamais qu'un fichier XML, donc texte) mais ne suffira. Une fois le canevas redimensionné, il faut encore redimensionner le contenu, ie l'image elle-même et ses composantes. Le problème est que ces composantes n'ont pas de taille, mais des coordonnées, telles que :

<path
       d="m 3.3215391,4.5106927 15.1106109,0 c 0.882111,0 1.279083,-0.1431999 1.532464,0.499744 l 1.53768,4.4896791 0,12.3386352 c 0,0.776254 0.05273,0.657651 -0.829386,0.657651 l -19.3458144,0 c -0.88211424,0 -0.82938734,0.118603 -0.82938734,-0.657651 l 0,-12.3386352 1.53767964,-4.489679 c 0.2463125,-0.629958 0.404039,-0.499744 1.2861532,-0.499744 z"
       id="path2488"
       style="fill:url(#linearGradient3051);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3053);stroke-width:0.99420071;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:block;overflow:visible" />

Et là, pour replacer ça correctement, ça risque d'être sport. Cette même demande a été faite sur la liste de dev d'Inkscape, sans solution à ma connaissance. Je pense que tu es bon pour faire ça à la mimine ^^

#12 Le 29/11/2010, à 13:14

Mathieu147

Re : Inkscape: remplacer une icone sous différente tailles

Je ne pense pas qu'il faille mettre nécessairement plein de tailles différentes. Si tu regardes dans /usr/share/icons/Humanity/mimes, il y a effectivement plusieurs SVG pour plusieurs tailles. Mais les fichiers sont différents:
application-msword
En haut à gauche, l'icône application-msword.svg en taille 16×16, en haut à droite la même icône redimensionnée en 48×48.
En bas à droite, l'icône application-msword.svg en taille 48×48, en bas à gauche la même icône redimensionnée en 16×16.

Je n'ai pas choisi mon exemple ci dessus par hasard: cette icône présente une bordure de 1px de large, quand on redimensionne simplement, c'est pas beau: en haut à droite la bordure est trop grosse, et en bas à gauche on ne la voit presque pas.

Si tu n'as pas ce genre de contrainte dans ton thème d'icône, tu peux placer ton fichier SVG dans la taille «scalable» et supprimer les autres tailles.

Dernière modification par Mathieu147 (Le 30/11/2010, à 07:07)


Pffff…

Hors ligne

#13 Le 30/11/2010, à 01:33

roger64

Re : Inkscape: remplacer une icone sous différente tailles

@poupoul2

Merci de tes explications qui m'ont permis d'élucider ce mystère vectoriel. Si ce n'est pas le svg, c'est donc son canevas... tongue

J'ai trouvé ça, effectivement la "grid" y est pour quelque chose...
http://en.flossmanuals.net/Inkscape/CreateIcon

Dernière modification par roger64 (Le 30/11/2010, à 02:33)

Hors ligne

#14 Le 30/11/2010, à 02:36

roger64

Re : Inkscape: remplacer une icone sous différente tailles

Mathieu147 a écrit :

Si tu n'as pas ce genre de contrainte dans ton thème d'icône, tu peux placer ton fichier SVG dans la taille «scalable» et supprimer les autres tailles.

C'est effectivement ce qui est souvent fait. Je ne comprends pas pourquoi dans le thème Humanity (qui est celui sur lequel s'appuie Ubuntu à ce jour) on a recours à une solution différente et surtout absolument pas pratique qui consiste à ouvrir sept répertoires, un pour chaque dimension de canevas.

Dernière modification par roger64 (Le 30/11/2010, à 02:38)

Hors ligne

#15 Le 30/11/2010, à 07:07

Mathieu147

Re : Inkscape: remplacer une icone sous différente tailles

roger64 a écrit :
Mathieu147 a écrit :

Si tu n'as pas ce genre de contrainte dans ton thème d'icône, tu peux placer ton fichier SVG dans la taille «scalable» et supprimer les autres tailles.

C'est effectivement ce qui est souvent fait. Je ne comprends pas pourquoi dans le thème Humanity (qui est celui sur lequel s'appuie Ubuntu à ce jour) on a recours à une solution différente et surtout absolument pas pratique qui consiste à ouvrir sept répertoires, un pour chaque dimension de canevas.

Parce que les petites icônes ne sont pas nécessairement un simple redimensionnement des grandes icônes, cfr. message #12.


Pffff…

Hors ligne

#16 Le 30/11/2010, à 07:24

roger64

Re : Inkscape: remplacer une icone sous différente tailles

OK. C'est plus joli comme ça. C'est effectivement une explication. Mais quel boulot....

Je laisse ce fil ouvert au cas où quelqu'un trouverait une façon de jongler avec les canevas...

Merci de vos informations. smile

Hors ligne

#17 Le 30/11/2010, à 08:36

Mathieu147

Re : Inkscape: remplacer une icone sous différente tailles

roger64 a écrit :

OK. C'est plus joli comme ça. C'est effectivement une explication. Mais quel boulot....

Je laisse ce fil ouvert au cas où quelqu'un trouverait une façon de jongler avec les canevas...

Merci de vos informations. smile

Ah mais en fait tu veux juste changer la taille du canvas? Parce que c'est très facile avec Inkscape big_smile

Fichier → Propriétés du document.

Tu peux choisir une valeur personnalisée, ou bien alors tu cliques sur le triangle «Redimensionner la page au contenu…» qui te permet de cadrer le canevas exactement sur ton image.


Pffff…

Hors ligne