Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Pages: 1
Bonjour,
Aujourd'hui, nous envoyons des mails au format texte, mais en fonction du type de messagerie du destinataire, les mails 'préformatés' avec des caractères de tabulation et de saut de ligne arrivent parfois un peu "déchirés".
Visiblement pour résoudre ce problème, il faut traduire nos email au format html.
Nous allons donc être obligé de "traduire" par exemple tous les caractère accentués (les é ou les è ......).
Quelqu'un aurait-il une "boite" déjà toute prète pour traduire une chaine de caractère de type texte au format html ?
Merci d'avance,
Hors ligne
Bonjour,
Pour ma part, j'ai construit l'interface e-mail de saisie de mon application avec un contrôle de Type RichTextEdit.
La méthode SaveDocument te permet d'exporter le document au format HTML, Word, PDF, RTF.
Tu peux importer ton message dans un contrôle RichTextEdit (masqué) et le réexporter au format HTML.
Hors ligne
buck a écrit:
Bonjour,
Pour ma part, j'ai construit l'interface e-mail de saisie de mon application avec un contrôle de Type RichTextEdit.
La méthode SaveDocument te permet d'exporter le document au format HTML, Word, PDF, RTF.
Tu peux importer ton message dans un contrôle RichTextEdit (masqué) et le réexporter au format HTML.
Ok, je vais essayer cette possibilité. Merci
Hors ligne
buck a écrit:
Bonjour,
Pour ma part, j'ai construit l'interface e-mail de saisie de mon application avec un contrôle de Type RichTextEdit.
La méthode SaveDocument te permet d'exporter le document au format HTML, Word, PDF, RTF.
Tu peux importer ton message dans un contrôle RichTextEdit (masqué) et le réexporter au format HTML.
Bonjour,
Tu n'aurais pas quelques exemples de code ???
Merci d'avance,
Hors ligne
Bonjour,
En fait, le corps du mail n'est pas saisi par l'utilisateur mais "construit" par l'application, en prenant par exemple des informations diverses pour avertir le client d'une prochaine livraison.
Cf Voir la précédente demande sur le sujet
Malheureusement, en fonction du client de messagerie du destinataire, le mail arrive parfois 'habimé', car certains caractères (retour chariot, retour à la ligne.....) sont mal traduit.
La seule solution apparente serait d'écrire tous les corps de mail en html. (ce qui fonctionne bien selon nos premiers tests).
Mais plutôt que de faire ce travail "manuellement" (car nous avons plusieurs types de mail dans notre application) , serait-il possible de traduire en html le corps du mail initialement constitué ?
Merci d'avance pour vos réponses.
Hors ligne
et si tu faisais une fusion dans ton rte et ensuite tu l'exportes en HTML ?
Hors ligne
Hello
Voilà la mienne
Fonction uf_trt_char_spec_html ( string as_source_html)
String as_tab_accent[] String as_tab_sortie[] Long len_tab, ll_cpt as_tab_accent = {'À' ,'Á','Â' ,'Ã' ,'Ä' ,& 'Å' ,'Æ' ,'Ç' ,'È' ,'É' ,& 'Ê' ,'Ë' ,'Ì' ,'Í' ,'Î' ,& 'Ï' ,'Ð' ,'Ñ' ,'Ò' ,'Ó' ,& 'Ô' ,'Õ' ,'Ö' ,'×' ,'Ø' ,& 'Ù' ,'Ú' ,'Û' ,'Ü' ,'Ý' ,& 'Þ' ,'ß' ,'à' ,'á' ,'â' ,& 'ã' ,'ä' ,'å' ,'æ' ,'ç' ,& 'è' ,'é' ,'ê' ,'ë' ,'ì' ,& 'í' ,'î' ,'ï' ,'ð' ,'ñ' ,& 'ò' ,'ó' ,'ô' ,'õ' ,'ö' ,& '÷' ,'ø' ,'ù' ,'ú' ,'û' ,& 'ü' ,'ý' ,'þ' ,'ÿ', "'" ,"’","°"} as_tab_sortie = {'À','Á','Â','Ã','Ä',& 'Å','&Aelig ','Ç','È','É',& 'Ê','Ë','Ì','Í','Î',& 'Ï','ð','Ñ','Ò','Ó',& 'Ô','Õ','Ö','×','Ø',& 'Ù','Ú','Û','Ü','Ý',& 'þ','ß','à','á','â',& 'ã','ä','å','æ','ç',& 'è','é','ê','ë','ì',& 'í','î','ï','ð','ñ',& 'ò','ó','ô','õ','ö',& '÷','ø','ù','ú','û',& 'ü','ý','þ','ÿ', '’', '’','°'} len_tab = upperbound(as_tab_accent) FOR ll_cpt = 1 TO len_tab this.uf_remplace_chaine(as_source_html, as_tab_accent[ll_cpt], as_tab_sortie[ll_cpt]) NEXT RETURN
fonction uf_remplace_chaine(string ref as_source, string as_cherche, string as_remplace)
string st_separateur = "~~'" string ls_part1, ls_part2 int in_long_chaine_cherche int in_long_chaine_rempl,& in_debut in_debut = 1 in_long_chaine_cherche = Len(as_cherche) in_long_chaine_rempl = Len(as_remplace) // Recherche de la première occurence de la chaine cherchée in_debut = Pos(as_source, as_cherche) // Boucle de modification de la chaine DO WHILE (in_debut > 0) as_source = Replace(as_source, in_debut, in_long_chaine_cherche, as_remplace) // Recherche de la prochaine occurence de la chaine cherchée in_debut = Pos(as_source, as_cherche) LOOP Return
Voilou !
Dernière modification par rapitou (18-08-2009 15:02:34)
Hors ligne
Bonjour rapitou,
Merci pour le code ta fonction.
Pourrais-tu corriger ton message pour afficher la coloration syntaxique
par l'intermédiaire de la fameuse balise
Merci d'avance
Hors ligne
Bonjour,
Merci pour vos conseils.
Après plusieurs tests, la solution rte et export en html ne convient pas, puisque bien évidemment, tous les caractères spéciaux ne sont pas traduits.
J'ai donc du me résoudre à traduire les messages.
A tous les caractères ci dessus, il faut aussi remplacer les retours chariots, saut de ligne et tabulations.
Le retour chariot ("~r") ou char(13) doit être remplacé par la balise <br>
Le saut de ligne ("~n") ou char(10) doit être remplacé par la balise <br/><br/>
La tabulation peut être remplacé par les balises '<span style="margin-left:400px;">' + 'chaine de caractère' + '</span>'
Le sujet est donc résolu.
Merci à tous.
Hors ligne
Pages: 1