【发布时间】:2020-11-21 00:16:16
【问题描述】:
我有一个字符串格式化系统,用户可以在其中使用特殊字符组合为文本着色、添加粗体、斜体和下划线,所有这些都以文本为中心。
我的问题是,例如,当用户尝试加粗和下划线时,文本仅显示后一个属性。例如,
{bold char combo}{italic char combo}Hello, World
将显示为:
你好,世界
而不是:
你好,世界
这是我当前使用的代码示例。
// Other formatting codes...
case 'B': // Bold
box.SelectionFont = new Font(box.SelectionFont, FontStyle.Bold);
break;
case 'I': // Italic
box.SelectionFont = new Font(box.SelectionFont, FontStyle.Italic);
break;
// Other formatting codes...
【问题讨论】:
-
注意:您使用原始意义上的“字体”(一系列印刷字符,它们一起制作,相同的设计)。但是现代/计算机使用仅用于一组字符。所以你的问题是“如何选择具有特定属性的字体”(也许添加“来自字体系列”)。请记住,它会在使用 Google 时简化关键字选择。
-
@GiacomoCatenazzi 可以理解。下次遇到类似问题时,我会记住这一点。
标签: c# colors richtextbox rtf text-formatting