Nous sommes le Jeu 28 Mars, 2024 19:45
Supprimer les cookies

Page 5 sur 5Précédent 1, 2, 3, 4, 5Icones pour Dia - gramme

Pour une tâche précise, pour remplacer un logiciel propriétaire donné...

Ven 06 Mars, 2009 13:53

Bonjour,
j'ai besion de ton aide s'il vous plait j'ai installer dia sous ubunto et je besion d'ajouter des codes dans le code source de dia avec python et je ne trouve pas les etapes comment ajouter un code au dia dans le code source situé sous /usr/share/dia
S'il vous plait repondez moi???

Cordialement[/quote]
samiad

Messages : 1

Mer 26 Août, 2009 23:54

Sp4rKY a écrit:Je suis tombé aujourd'hui sur ce topic qui m'a vraiment aidé. J'apporte donc ma petite contribution avec une archive toute prête pour dia :)
http://people.dunnewind.net/maxence/dia/icons.tar.bz2
Il suffit de le télécharger dans votre homedir et de le détarrer.
Il contient un répertoire .dia (donc caché) qui ira compléter celui de votre répertoire personnel. Donc, en résumé :
Code: Tout sélectionner
cd ~
wget http://people.dunnewind.net/maxence/dia/icons.tar.bz2
tar xjf icons.tar.bz2
dia

et vous aurez une nouvelle catégorie "Perso" avec les éléments.


Hello,

Dites moi le liens est mort, quelqu'un pour partager l'archive icons.tar.bz2?

Merci à tous.
kippix

Ven 26 Fév, 2010 09:30

Bonjour à tous, c'est normal que quand je suis la procédure d'exportation dans dia, la version .shape me renvoi un icone immonde ? pixelisé de partout, on arrive même plus à savoir ce que c'est :cry:
fire24

Mer 19 Mai, 2010 16:52

Bonjour,

A voir le monde intéressé par l'utilisation des icones de Jean CARTIER et les difficultées rencontrées dans la génération des fichiers .shape depuis que le lien vers dia_split_svg.py est invalide, y a t'il quelqu'un pour mettre en ligne au format zip le pack de fichiers issu de hardware.svg comme pour les packages de shapes trouvés sur "dia-installer.de/shapes.html"
Merci.
arncha

Jeu 20 Mai, 2010 12:48

Salut,

Le lien vers le fichier python est : http://www.softia-systems.net/contribs/dia_split_svg.py

Mais est-ce le bon lien et le bon script ??? Jamais testé pour ma part.

Sinon, voici le script :
Code: Tout sélectionner
#
#   Script realise par THOMAS DUBOIS pour SOFTIA SYSTEMS
#       BSD LICENCE
#   Merci d'envoyer un mail a tdubois@softia-systems.net
#   si vous utilisez, transmettez, ou reactualiser le script
#   (juste pour un suivi du travail :))
#   Finalise le 28/08/2007
#

# Ce script ne prends pas d'argument.
# Il creera dans le repertoire courant un repertoire svg, et shape
# Le repertoire svg contiendra les .svg de chaque objet
# Le repertoire shape contiendra les .shape correspondant au SVG ainsi
# qu'un PNG pour la preview
# Un fichier Yourshape.sheet sera creer.
# Le fichier .sheet doit etre modifier afin de changer
# le nom de la feuille apparaissant dans dia

# Le fichier shape est a copier dans votre ~/.dia/shape/Votreshape
# Le fichier Yourshape.sheet est a copier dans le repertoire ~/dia/sheets/
# sous le nom Votreshape.sheet



# Debut du script

from xml.dom import minidom
# Fichier SVG d'entree a parser
xmldoc = minidom.parse('/path/to/file.svg')

# probleme de locale, pas trouve d'autre solution ....
# si quelqu'un a qqchose a proposer
import locale, sys
reload(sys)
loc = locale.getdefaultlocale()
if loc[1]:
    encoding = loc[1]

# une version Non-Unicode retournera AttributeError...
if encoding:
    sys.setdefaultencoding(encoding)


import os
import re
import popen2

# recuperation des groups d'element, ici les objets
reflist = xmldoc.getElementsByTagName('g')

shapehead = """<?xml version="1.0"?>

<shape xmlns="http://www.daa.com.au/~james/dia-shape-ns"
xmlns:svg="http://www.w3.org/2000/svg">
"""

shapetail = """
</svg:svg>
</shape>"""


svghead = """<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">

<svg xmlns="http://www.w3.org/2000/svg">
"""

svgtail = "\n</svg>"

# Creation du fichier sheet
sheetfile = open("YourSheet.sheet", "w")
sheetfile.write("""<?xml version="1.0" encoding="iso-8859-1"?>

<sheet xmlns="http://www.lysator.liu.se/~alla/dia/dia-sheet-ns">
  <name>Sample</name>
  <description>A collection of sample shapes.</description>
  <contents>
""")

# Creation de repertoires pour stocker les fichiers
os.mkdir("svg")
os.mkdir("shape")

i = 0
for block in reflist:
   #ouverture du fichier svg de l'objet courant et ecriture des entetes
   svgfile = open("svg/" + str(i) + ".svg", 'w')
   svgfile.write(svghead)
   svgfile.write("<desc>%i</desc>\n"%(i))
   shapefile = open("shape/" + str(i) + ".shape", 'w')
   shapefile.write(shapehead)
   shapefile.write("<name>%s</name>\n"%(i))
   shapefile.write("<icon>%s.png</icon>\n<svg:svg>\n"%(i))

   # Regexp pour enlever nombre de classes qui sont incompatible avec dia
   p = re.compile('sodipodi:[a-z0-9\-]+=".*?\"')
   chaine =  p.sub('', block.toxml())
   svgfile.write(chaine)
   chaine = chaine.replace("<a:","")
   chaine = chaine.replace("<","<svg:")
   chaine = chaine.replace("<svg:/","</svg:")
   p = re.compile('i:[a-z\-]+=".*?\"')
   chaine =  p.sub('', chaine)
   p = re.compile('inkscape:[a-z\-]+=".*?\"')
   chaine =  p.sub('', chaine)
   shapefile.write(chaine)
   shapefile.write(shapetail)
   shapefile.close()
   sheetfile.write("<object name=\"%s\">\n"%(i))
   sheetfile.write("<description>%s</description>\n"%(i))
   sheetfile.write("</object>\n")
   # conversion des .svg de chaque objet svg en png
   popen2.popen3("/usr/bin/inkscape svg/%s.svg -e shape/%s.png -d 90 -z -D"%(i,i))
   shapefile.close()
   svgfile.write(svgtail)
   svgfile.close()
   i += 1

sheetfile.write("""</contents>
</sheet>""")
sheetfile.close()


Et un gars qui a fait le boulot... Merci à lui :
http://forum.master-inside.com/viewtopic.php?f=1&t=62

Jean CARTIER
janolap1

Avatar de l’utilisateur
Messages : 348
Géo : Bourges

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit