2009-12-28 23 views
0

Je found comment faire du texte en gras dans le code:caractères en italique dans un RichTextBox

richTextBox1.Rtf = @"{\rtf1\ansi This is in \b bold\b0.}"; 

Mais je dois aussi comment rendre le texte italique. Google ne me donne pas beaucoup.

J'ai essayé ceci (similaire à gras, mais avec un caractère différent), mais cela ne fonctionne pas.

richTextBox1.Rtf = @"{\rtf1\ansi This is in \i italic\i0.}"; 

Quelqu'un peut-il m'aider s'il vous plaît?

Répondre

0

Voilà comment je réussi à le faire:

richTextBox1.Rtf = @"{\rtf1\ansi This is in \i\f0\fs17 italic\i0.}"; 

modifier:

Comment ai-je fait cela? J'ai créé une petite application de test avec une riche zone de texte et un bouton.

J'ai tapé du texte dans la zone richtext, j'ai sélectionné le texte et appuyé sur le bouton.

private void button1_Click(object sender, EventArgs e) 
{ 
    richTextBox1.SelectionFont = new Font(richTextBox1.Font, FontStyle.Italic); 
    richTextBox1.SaveFile(@"c:\test.rtf"); 
} 

Ceci a sauvé le rtf. J'ai ouvert le RTF dans Notepad ++. Le contenu du rtf était

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}} 
\viewkind4\uc1\pard\i\f0\fs17 hello\i00\par 
} 

et voilà comment j'ai trouvé comment utiliser italique dans un richtextbox.

1

Deux articles me viennent à l'esprit qui peuvent vous aider à comprendre le RTF. Le premier est un RTFTree qui peut être utilisé pour créer un document complexe et le charger comme un document XML où vous avez des arbres/nœuds. L'autre article est sur l'écriture de votre propre RTF converter - un analyseur qui peut convertir un RTF en HTML et vice versa.

Vous trouverez des exemples dans le code sur la façon d'insérer un formatage en italique et ainsi de suite. J'ai inclus ces deux liens pour vous aider à comprendre comment utiliser RTF.

Begin Edit: J'ai créé un simple document rtf dans WordPad comme indiqué ici

 
{\rtf1\ansi\ansicpg1252\deff0\deflang6153{\fonttbl{\f0\fswiss\fcharset0 Arial;}} 
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\b\f0\fs20 Bold\b0\par 
\i Italic\i0\par 
} 

Le document RTF a deux lignes 'gras' et 'italique' avec leur mise en forme respective, a enregistré le document et l'a ouvert dans un autre éditeur, c'est ce qui est montré. Donc quelque chose doit être manquant peut-être un marqueur de paragraphe \par enroulé autour de lui. Cela a été fait sous WordPad de Windows XP Home.

Fin Modifier

espère que ces sera d'une aide et utiliser pour vous, Cordialement, Tom.

+0

merci pour votre contribution, peu on ne sait pas quoi utiliser pour le texte en italique – Natrium

+0

@Natrium: S'il vous plaît voir ma réponse éditée. Je suppose que vous n'avez pas sélectionné la police appropriée pour activer le style gras/italique.Peut-être essayez de copier le code rtf et collez-le comme une affectation à la propriété RtfText de la classe richTextBox1. J'espère que cela aidera davantage. – t0mm13b

+0

+1 pour votre effort – Natrium