C#中添加文本框的上标及文字大小

最近在做一个项目时遇到需要在文本框中进行上下标的处理,单纯的文本控件TextBox满足不了这个功能,必须使用RichTextBox富文本控件来实现,具体效果如下:

未设置上标字体大小前:设置上标的字体大小后

具体的代码如下:

            this.richTextBox1.SelectedText = "mm";
            this.richTextBox1.SelectionFont = new Font("宋体", 8, FontStyle.Regular);
            this.richTextBox1.SelectionCharOffset = 3;   //位移的像素,正数为上移,负数为下移         
            this.richTextBox1.SelectedText = "2";

代码很简单,但是有个注意事项:this.richTextBox1.SelectionFont = new Font("宋体", 8, FontStyle.Regular);此行代码的位置很关键,如果在最后一行或者第一行显示,那么整个richTextBox1的字体大小都是8了,整个显示都很小;如果不设置,默认的字体是10号字体,显示的上面的那个2很大,效果不好如上图所示。

原文地址:https://www.cnblogs.com/huangwen/p/2873220.html