Editeur HTML VB.NET

Résolu
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 - 26 juil. 2009 à 02:53
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 28 juil. 2009 à 09:39
Bonjour à vous tous

Je viens vous demander un petit coup de main dans le cadre d'un petit projet. Je suis à la recherche d'un composant pour editer le html (pour l'envoi d'email).

J'ai fais le tour sur Google et sois je tombe sur des composants .Net qui utilisent des ActiveX (Interdit pour moi, mon appli va tourner des plateforms x64, ca pose des soucis de compatibilité), puis je n'aime simplement pas ça...

Sinon j'ai trouvé des classes pour convertir du RTF (depuis un RicheTextBox) vers du HTML, le souci c'est que les images ne sont pas prises en charge et elles sont bourrés de bug

J'ai bien l'envie d'en conçevoir un, même de le déposer ici, mais je ne sais pas comment m'y prendre. Traduire du RTF ou éditer directement le HTML ?

Quelqu'un connait-il le nom d'un composant .Net Gratuit pour l'édition du HTML (genre le FreeText mais pour vb.net) ?

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

25 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
26 juil. 2009 à 23:54
La version vb est dans les commentaires apparemment.
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 juil. 2009 à 02:39
si tu t'aventures dans la confection complète de l'éditeur/convertisseur, toutes les balises ici :
http://www.biblioscape.com/rtf15_spec.htm

(déconcertant pour les images)
++
3
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
27 juil. 2009 à 18:53
Re bonjour !

Merci encore et encore pour vos posts, c'est sympa de se casser la tête pour moi ^^ A charge de revanche, si possible

Du coup, pour la petite histoire je suis passé voir mon client ce matin, et il se trouve qu'il a raccourci mon délais de livraison. Je lui ai expliqué que je rencontrais quelques difficultés sans pour autant rentrer dans les détails.
On a alors convenu d'une solution plus simple, étant donné qu'il travaille beaucoup sous Word et Excel, ce qui l'intéresse c'est de pouvoir evoyer un fichier Word par email et Bingo ! La solution m'est apparue, du coup je n'ai plus besoin d'éditeur HTML, je vais simplement importer une page Web (avec un aperçu dans un WebBrowser), qu'il aura enregistré au format HTML depuis Word, la solution lui convient apparemment même mieux qu'avec un éditeur au sein du logiciel (peut être par son habitude de Word).

Voila le problème est résolu, ce pendant étant toujours en recherche d'idées pour déposer des sources vbfrance durant mon temps libre, ma prochaine source sera donc, je pense consacré à ce thème. Un composant pour l'édition de page web purement VB.Net.

@+ Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
26 juil. 2009 à 07:11
salut,

un début de piste peut-être... avec des mots clés anglais :
wysiwyg editor

le premier lien mène vers un toto de construction d'editeur, mais pour déjà intégrer à une page (comme la freetextbox justement)
http://www.devarticles.com/c/a/HTML/Building-a-WYSIWYG-HTML-Editor-Part-1/

sur cette voie il t'est possible de charger une page html dans un webbrower


autre piste, c#
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=4322&lngWId=10

bon courage ;)
[hr]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 16:29
Hi, PCPT !

Merci pour tes réponses, j'avais déja fais une recherche en anglais avec les mots clés .Net component Html Editor, mais sans succes...

Pour ce qui est de la première piste ca ne me dis pas grand chose. Je recherche à créer un Editeur HTML, mais je n'avais pas présisé que c'était pour une application WinForm.

Pour ce qui est de la seconde, je l'avais en stock, mais elle utilise un ActiveX, je préfère plutot du natif.

Merci quand même, dans tous les cas, si je trouve ou si j'en concois un, je le dépose dans les sources !

@+ Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
26 juil. 2009 à 16:47
tu sais moi et dotnet.... c'est pas encore çà ^^

désolé de ne pouvoir mieux te renseigner

bonne soirée
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 17:32
hi ^^

Ben oué .Net on a du mal quand on a été habitué à d'autre langages (vb6 par ex). Mais bon perso quand on à des applis à développer pour des clients ya pas photo, gain de temps considérable, puis l'inteface est toute belle et toute fraîche donc forcément.

Pour ce qui est de mon editeur je pensait que ca existait forcément, ben la je suis étoné ! Rien en .Net, bien sûr ya des Ax de partout...

Je me tâte, car je n'ai pas toute la vie pour réaliser cette appli et faire une conversion de langage RTF/HTML est totalement possible et selon moi c'est la solution la plus propre à adopter plutot que des bidouillages de RichTextBox, mais bon faut en avoir le courrage et le temps... Du coup je me retrouve un peu coincé la.

Juste pour infos le contrôle devra répondre au caractéristiques suivantes :

- Prise en charge du formatage du texte (Gras/Italique/Souligné)
- Prise en charge de la police (Nom, Taille, couleur)
- Retraits, puces et alignements.
- Insertions d'image.

C'est tout, pas de tableaux ou de Div éditable via le contrôle, ni de CSS.

@+ et merci encore.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
26 juil. 2009 à 17:54
re Mayzz,

si "minimaliste" çà me semble tout à fait faisable
un peu moins évident pour les images (une conversion puis extraction s'impose), mais pourquoi pas

j'essaye de jeter un oeil ce soir
je t'aurais bien proposer de m'investir plus mais je suis assez pris en ce moment donc pas de parole que je ne pourrai tenir ;)

je te tiens informé
(dans tous les cas tu peux déjà plus ou moins mettre en place l'interface)
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 19:35
Merci ^^

Mais ne te casse pas la tête, j'ai regardé, en ce qui concerne le langage RTF on dirait une sorte de PostScript (Comme le PDF), C'est pas difficile à traduire mais il faut du temps pour en comprendre la syntaxe (grammaire et orthographe). Pour ce qui est des images effectivement cela demande une extraction, vers un fichier sur le disque, et la traduction en url pour le HTML, ce qui inclu de déposser les ressources dans un dossier, pas de traduction possible d'une image en HTML, il faut proposer à l'utilisateur un emplacement disque pour ses images.

Mon but étant d'envoyer des emails au format HTML, je n'aurais pas ce souci, je traduirais l'url par le nom de l'image et la fournirais en pièce jointe.

@+ et merci encore, j'ai commencé à regarder la syntaxe de mon coté...

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
26 juil. 2009 à 20:10
c'est plutôt rtf vers mime dans ce cas, non?
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
26 juil. 2009 à 20:55
j'y pense :
le MIME est enregistré directement en EML (outlook, format "mail")
ce format est du MHT

peut-être aussi une piste donc : rtf vers mht (qui s'ouvre directement avec IE, et peut-être avec tout nav)

sinon je suis tombé sur une source qui a l'air assez complète, mais en CPP

http://sourceforge.net/projects/docfrac/files/

fin des recherches pour aujourd'hui
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 21:03
Heu... je ne sais pas trop, je n'envoi pas mes mail via Outlook, mais via le Framework (SMTPClient + MailMessage), MailMessage à une propriété IsBodyHTML, après a savoir si elle prend en charge le format EML...

Sinon merci pour le lien vers la Lib, on verra ce que cela donne apres compil.

@+

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
26 juil. 2009 à 21:50
salut

Voici un control en c#
http://windowsclient.net/articles/htmleditor.aspx (nb c'est du 2003)

Windows client le site de microsoft pour les applis windows .net

(ca peut être une bonne piste pour le démarrage d'un éditeur plus ou moins complexe)

Il y a peut être des controles sur codeplex aussi.
exemple http://www.codeplex.com/WinformHtmlTextbox

Sinon tu peux peut être aller aussi sur la piste du WPF.

Bonne programmation.
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 22:14
Salut nhervagault

J'ai regarder ces contrôles, ils utilisent tous deux des ActiveX, la est le problème...

Dans tous les cas tu m'a ouvert sur la voie d'une nouvelle piste. Je pensait qu'en vb, le seul contrôle capable d'afficher du texte formaté est en faite le RichTextBox, d'ou mon idée de vouloir convertir le RTF en HTML.

Mais en voyant ces contrôles, je me demande si il ne serait pas plus simple d'éditer une page html directement et de l'afficher dans un browser (natif au .Net biensur). Le problème se poserait quand à l'édition du text, un webbrowser est en lecture seule, et ne pemet pas d'écrire du texte, ni d'en sélectionner.

Coté WPF les usercontrols crées en WPF sont compatible Winform ???

@+ Et merci.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
26 juil. 2009 à 23:23
Je ne sais pas trop si ca peut guider dans tes recherches mais voici
un début de programme

    
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim str As String =   "  bonjour  "
    WebBrowser1.DocumentStream   = New IO.MemoryStream(Form1.StrToByteArray(str))
End Sub

Public Shared Function StrToByteArray(ByVal str As String) As Byte()
   Dim encoding As New System.Text.ASCIIEncoding()
   Return encoding.GetBytes(str)
End Function 'StrToByteArray


le document est crée en memoire et rendu dans une page HTML avec le controle webbrowser qui est natif dotnet depuis vs 2005 ou 2008, il me semble.

Il te reste la partie gestion des boutons à faire.
Le design pattern commande permet de répondre à ce problème.

Peut etre cette source peut etre un depart

http://www.codeguru.com/csharp/.net/net_general/patterns/article.php/c15663__2/

Bon dev.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
26 juil. 2009 à 23:28
J'ai oublié de répondre à la fin de la question.

Oui les controles WPF sont compatibles entre windows forms et WPF.
L'inconvénient c'est que le rendu est fait en CPU et pas en GPU, mais pour de la 2D ou un petit controle les performances sont peut etre pas primordiale.

Mais regarde si avec mon précedent post ca débloque pas la situation.

Ou en modifiant un editeur RTF avec le code de mon précédent post.

Bon dev.
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 23:29
La création d' une page web et l'affichage ne présentent pas trop de problème en effet, le problème se pose lors de l'edition du texte par l'utilisateur.

Si l'utilisateur veut sélectionner "bonjour" pour enlever le Bold, le contrôle WebBrowser ne permet pas l'édition.

Même si on peut faire manuellement cette partie en enlevant le les balises dans le MemoryStream, faut-il encore savoir quelle ligne l'utilisateur à sélectionné...

Un si grosse galère pour un contrôle vraiment si commun... je ne pensait absolument pas buté la dessus !

@+ et merci encore pour le temps passé à me répondre

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
26 juil. 2009 à 23:39
"Même si on peut faire manuellement cette partie en enlevant le les balises dans le MemoryStream, faut-il encore savoir quelle ligne l'utilisateur à sélectionné..."

Pardon je voulais dire "quelle partie du texte est sélectionné"


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
26 juil. 2009 à 23:52
La source suivante est-elle compatible sur x64.

http://www.codeproject.com/KB/IP/WYSIWYG_netHTML2.aspx

Elle utilise 1 seul activex qui est celui de IE il me semble.

Bon dev.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 juil. 2009 à 21:33
merci de nous avoir tenu informés Mayzz

de mon côté avec mes recherches (si si, ton sujet m'a intrigué) j'ai eu la même constatation que toi : peu voire pas d'éditeur WYSIWYG en winform.
(certainement de l'asp.net, donc adaptable en un clin d'oeil mais je n'ai as regardé)

je ne te propose pas un projet commun!! (déjà évoqué) mais si tu veux un coup de main, m'investir (très) partiellement est envisageable sous VS2008

ps : malgré parfois les apparences, je le répète, je reste un dinosaure du VB6 outrepassé!

pss : ne te force pas à répondre, mon orgueil a vu pire si tu refuses
dans tous les cas si tu arrives à tes fins c'est tant mieux
et encore mieux si tu partages, vue la nature du sujet

(contactable par MP)

bonne continuation
0
Rejoignez-nous