Bonjour à tous,

Et oui encore un post concernant un problème de codage.
Je suis sur le PC depuis 8h ce matin et je pense que cela a du me lobotomiser un peu le cerveau.

Je demande donc un petit coup de main et d'oeil neuf sur le problème suivant.

Je récupère le contenu d'1 wx.TextCtrl multiligne et souhaite l'afficher dans le un document pdf grâce à Reportlab.

Dans le contenu de ce wxTextCtrl j'ai évidemment des accents.

Malgré un grand nombre d'essai je ne parviens pas à éviter le message d'erreur suivant:

Elements.append(p(u'%s'%com, font('courier', 11, 0, 0)))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 44: ordinal not in range(128)
voici les différents essais que j'ai pu faire... ou txt est mon wx.TextCtrl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
!-*- conding:utf-8 -*-
com = txt.GetValue()
Elements.append(p(u'%s'%com, font('courier', 11, 0, 0)))
### ou
com = txt.GetValue()
Elements.append(p(com, font('courier', 11, 0, 0)))
### ou
com = txt.GetValue()
if not wx.USE_UNICODE:
com = com.encode("iso8859-15", "replace")
Elements.append(p(com, font('courier', 11, 0, 0)))
### ou
com = txt.GetValue()
com = com.encode("cp1252", "replace")
Elements.append(p(com, font('courier', 11, 0, 0)))
### ou
...[/CODE]

Le plus affolant et ce qui me fait complètement tourner la carte (expression de chez moi qui veut dire) c'est que ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
!-*- conding:utf-8 -*-
com = 'éééééé'
Elements.append(p(com, font('courier', 11, 0, 0)))
ça fonctionne nikel...

J'attends grandement une aide de votre part et aussi... une énième explication.

merci de votre patience