p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre émérite
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    août 2004
    Messages
    751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2004
    Messages : 751
    Points : 847
    Points
    847

    Par défaut Créer une image code barre

    Bonjour, voilà que je me trouve devant un problème que je n'arrive pas a régler.
    Je dois créer des images faisant apparaitre des codes barre.

    J'ai donc créer une external method, qui pointe vers un script python qui s'il n'est pas appelé via Zope, fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    import PIL
    import base64
     
    def RPPSIMG(text='123456789'):
        s=text
        size=100,100
        image=PIL.Image.new('RGB', size,(255,255,255))
        draw = PIL.ImageDraw.Draw(image)
     
        font = PIL.ImageFont.load("/usr/share/fonts/Code39r.ttf")
        size=draw.textsize(s, font=font)
        image=PIL.Image.new('RGB', size,(255,255,255))
        draw = PIL.ImageDraw.Draw(image)
        draw.text((1,0), s, font=font,fill=(0,0,0))
        return base64.encodestring(image.tostring())
    J'ai fait un import de PIL car il est probable que zope ait déjà un module Image.

    Voici le message derreur :
    IOError
    cannot find glyph data file

    Traceback (innermost last):

    Module ZPublisher.Publish, line 119, in publish
    Module ZPublisher.mapply, line 88, in mapply
    Module ZPublisher.Publish, line 42, in call_object
    Module Products.ExternalMethod.ExternalMethod, line 231, in __call__
    __traceback_info__: (('123456789',), {}, ('123456789',))
    Module /home/zope/Extensions/imgCodeBar.py, line 11, in RPPSIMG
    Module PIL.ImageFont, line 180, in load
    Module PIL.ImageFont, line 79, in _load_pilfont

    IOError: cannot find glyph data file
    je répète que le script fonctionne s'il est utilisé en dehors de Zope.

    Avez vous des suggestions.

    Nota :
    dans zope le code suivant fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    import PIL
    import base64
    
    def RPPSIMG(text='123456789'):
        s='13213'
        size=100,100
        image=PIL.Image.new('RGB', size,(255,255,255))
        draw = PIL.ImageDraw.Draw(image)
    
        font = PIL.ImageFont.load_default()
        size=draw.textsize(s, font=font)
        image=PIL.Image.new('RGB', size,(255,255,255))
        draw = PIL.ImageDraw.Draw(image)
        draw.text((1,0), s, font=font,fill=(0,0,0))
        return base64.encodestring(image.tostring())
    Pensez à la documentation en ligne, ca aide!

  2. #2
    Membre émérite
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    août 2004
    Messages
    751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2004
    Messages : 751
    Points : 847
    Points
    847

    Par défaut

    Bon j'ai contourné le problème en utilisant ImageMagick pour générer l'image.

    J'aime pas vraiment ça mais pour l'instant c'est la solution la plus robuste.
    (Jamais déçu !)
    Pensez à la documentation en ligne, ca aide!

Discussions similaires

  1. [WD14] Créer un Etat pour une Imprimante Code à Barre
    Par b_reda31 dans le forum WinDev
    Réponses: 13
    Dernier message: 21/09/2012, 08h24
  2. Réponses: 1
    Dernier message: 30/12/2005, 17h14
  3. Créer une image disque
    Par tsing dans le forum Composants
    Réponses: 2
    Dernier message: 14/12/2005, 16h19
  4. comment créer une image sous forme d'eclipse(ronde)
    Par unix27 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/05/2005, 22h16
  5. [Image]Créer une image avec JAVA 1.1
    Par burno dans le forum 2D
    Réponses: 4
    Dernier message: 11/08/2004, 09h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo