【问题标题】:Inserting graphics into RichTextBox将图形插入 RichTextBox
【发布时间】:2026-01-27 14:25:01
【问题描述】:

我刚开始在一所大学学习,并想出了一个管理我的成绩单的想法。它基本上是一个带有小型版本控制系统的文本编辑器。

为了避免最终出现黑白文本墙,我想为“图形”添加一些预设(不确定这里使用的正确词是什么)。例如,如果我的教授写下这样的定义:

积分

也称为黎曼积分。面积的数值测量 以给定函数的图形为界,以 x 轴为界,在......

我想将它包装成某种不同的背景和样式,就像上面引用的 StackExchange 上的这里一样,只需按一下按钮。另一个例子是在我的一本书中:

是否可以将这种样式包含到 RichTextBox 中,或者我应该寻找替代品/现有的文本编辑器?

【问题讨论】:

  • 不容易。您必须对 raw rtf 进行编码。当然可行,但真的很难。您可以浏览rtf specifcationshere 来感受一下。 (一个不错的版本来自unexpected site)除非你是一个强迫性的编码器,否则几乎任何替代方案似乎都是可取的;-)

标签: c# textbox richtextbox


【解决方案1】:

是的,这个URLStack Overflow Answer给出了实现示例

以及一些用于知识目的的代码

 //Apply Some Font to selection
 richTextBox1.SelectionFont = new Font("Arial", 16);
 // Apply same color of text
 richTextBox1.SelectionColor = Color.Purple;
 //backgroud colour of Selection
 richTextBox1.SelectionBackColor = Color.Red;

还有一点要明确,如果你想制作一个文本编辑器,你必须给颜色、大小等组合框,并在 IndexChange Event 上更改它。

【讨论】:

  • 实际上这只会给一行的文本部分着色,而不是空白部分:-(