none
[C#]我想在richtextbox中让汉字和字符的字体不一样,我应该怎么处理呢?谢谢,在线等。。。。。。。 RRS feed

  • 问题

  • 我想在richtextbox中让汉字和字符的字体不一样,我应该怎么处理呢?比如汉字用宋体,英文用times new roman
    2009年8月12日 10:57

答案

  • private void Form1_Load(object sender, EventArgs e)
    {
        this.BuildRichTextBox();
    }
    
    private void BuildRichTextBox()
    {
        RichTextBox fRichTextBox = new RichTextBox();
    
        fRichTextBox.Dock = DockStyle.Fill;
        fRichTextBox.Font = new Font("times new roman", 8);
        fRichTextBox.AppendText("示例文本");
        fRichTextBox.AppendText(".NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见 .NET Framework 系统要求。");
    
        // 通过正则获取中文部分, 重新设置中文的字体
        MatchCollection fMatchs = Regex.Matches(fRichTextBox.Text, "[\u4e00-\u9fa5]");
    
        foreach (Match fMatch in fMatchs)
        {
            fRichTextBox.Select(fMatch.Index, fMatch.Length);
            fRichTextBox.SelectionFont = new Font("宋体", 15, FontStyle.Bold | FontStyle.Italic);
        }
    
        this.Controls.Add(fRichTextBox);
    }

    知识改变命运,奋斗成就人生!
    2009年8月12日 11:34
    版主

全部回复

  • private void Form1_Load(object sender, EventArgs e)
    {
        this.BuildRichTextBox();
    }
    
    private void BuildRichTextBox()
    {
        RichTextBox fRichTextBox = new RichTextBox();
    
        fRichTextBox.Dock = DockStyle.Fill;
        fRichTextBox.Font = new Font("times new roman", 8);
        fRichTextBox.AppendText("示例文本");
        fRichTextBox.AppendText(".NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见 .NET Framework 系统要求。");
    
        // 通过正则获取中文部分, 重新设置中文的字体
        MatchCollection fMatchs = Regex.Matches(fRichTextBox.Text, "[\u4e00-\u9fa5]");
    
        foreach (Match fMatch in fMatchs)
        {
            fRichTextBox.Select(fMatch.Index, fMatch.Length);
            fRichTextBox.SelectionFont = new Font("宋体", 15, FontStyle.Bold | FontStyle.Italic);
        }
    
        this.Controls.Add(fRichTextBox);
    }

    知识改变命运,奋斗成就人生!
    2009年8月12日 11:34
    版主
  • 太感谢了,非常感谢,我忘了正刚表达式了,哈哈,真的很谢谢哈。X.X.Y是个大大的好人呀。。。。。。
    2009年8月12日 12:14