none
关于RichTextBox关于字体下划线对齐问题 RRS feed

  • 问题

  • 在RichTextBox设置字体的下划线,当字体大小不同时,下划线不对齐(粗细和高低不一致),请问如何解决?
    而且奇怪的时同样的RTF在Word下显示的下划线却是对齐的。

    2009年12月25日 2:03

答案

  • 你好!
         的确是有这个现象的,我是通过SelectionCharOffset来调整的:
                this.richTextBox1.Font = new Font("宋体",9,FontStyle.Underline);
                this.richTextBox1.SelectionStart = 5;
                this.richTextBox1.SelectionLength = 4;
                this.richTextBox1.SelectionFont = new Font("宋体",36, FontStyle.Underline);
                this.richTextBox1.SelectionCharOffset = 3;
         不过粗细没有办法调整了!
         希望对你有帮助!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 2:55
    版主
  • 他那个下划线的位置和字体大小有一定比例,所以出现了这个问题!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 3:33
    版主
  • 如果那个地方不能编辑,那可以尝试用WebBrowser控件

    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 4:29

全部回复

  • 你好 我刚才测试了没有出现你说的情况 粗细大小不一样的情况下下划线还是保持一致的
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!My blog~~~
    2009年12月25日 2:15
    版主
  • 你好,
    我的环境是vs2005,字体粗细不会有不对齐的情况,但是一行字中中间几个字的字体大小不同,比如其他字体是9号字,中间几个是36号字,当这行字全部加上下划线时,就会很明显看到中间的几个字的下划线比其他字要低一些而且粗一些。

    这个是在RichTextBox显示的问题:
    http://img.haokanbu.com/img/origin/1c0382bceeb94b31aef4db7e2c96b033.jpeg/

    同样的rtf在word显示就没问题:
    http://img.haokanbu.com/img/origin/fec472e886944a42b53a09d0cdbc971f.jpeg/
    2009年12月25日 2:22
  • 你好!
         的确是有这个现象的,我是通过SelectionCharOffset来调整的:
                this.richTextBox1.Font = new Font("宋体",9,FontStyle.Underline);
                this.richTextBox1.SelectionStart = 5;
                this.richTextBox1.SelectionLength = 4;
                this.richTextBox1.SelectionFont = new Font("宋体",36, FontStyle.Underline);
                this.richTextBox1.SelectionCharOffset = 3;
         不过粗细没有办法调整了!
         希望对你有帮助!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 2:55
    版主
  • 你好,感谢,不过SelectionCharOffset 好像只能调整行间距,对下划线的高低还是没有影响,不过还是感谢帮忙。
    2009年12月25日 3:15
  • 不客气啊!
    你试试我上面的代码,可以把下划线对齐的
    周雪峰
    2009年12月25日 3:23
    版主
  • 恩,确实,3q了,但是这样还是不能达到要求,呵呵
    2009年12月25日 3:27
  • 他那个下划线的位置和字体大小有一定比例,所以出现了这个问题!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 3:33
    版主
  • 如果那个地方不能编辑,那可以尝试用WebBrowser控件

    • 已标记为答案 YiChun Chen 2009年12月28日 9:38
    2009年12月25日 4:29