C# 一个单词周围的RTF框?

C# 一个单词周围的RTF框?,c#,border,rtf,text-formatting,C#,Border,Rtf,Text Formatting,在RTF中,是否可以使一个单词出现并在其周围加上一个方框?我不确定Table是否是正确的选择,因为我不想出现对齐问题 行高必须与普通文本相同 边框颜色 应表现为正常文本 (不相关,但我正在使用C#和RTF)您可以在RTF中的文本和段落周围添加边框,如下面的RTF示例所示 {\rtf1 {\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red255\green0\blue0;\red0\green255\blue0;} \pard\plai

RTF中,是否可以使一个单词出现并在其周围加上一个方框?我不确定
Table
是否是正确的选择,因为我不想出现对齐问题

  • 行高必须与普通文本相同
  • 边框颜色
  • 应表现为正常文本

(不相关,但我正在使用C#和RTF)

您可以在RTF中的文本和段落周围添加边框,如下面的RTF示例所示

{\rtf1
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red255\green0\blue0;\red0\green255\blue0;}
\pard\plain
\brdrt\brdrs\brdrw10\brsp20\brdrcf2 
\brdrl\brdrs\brdrw10\brsp80 
\brdrb\brdrs\brdrw10\brsp20 
\brdrr\brdrs\brdrw10\brsp80  
Hello 
{\chbrdr\brdrs\brdrw10\brsp20\brdrcf3 World}
}
要突出显示以
\chrbdr
关键字开头的单个单词(这会将边框应用于所有边,文本的每边不能有不同的边框,但段落可以有不同的边框)。然后使用以下关键字修改边框样式

\brdrs
-设置单个厚度边框。有很多可选的边框样式,如双格、短划线、点划线等

\brdrw10
-设置边框的宽度,单位为twip(twip是点的二十分之一)。给你10支

\brsp20
-设置边框与文本的分隔,同样以twips为单位-此处设置为20 twips。请注意,将此值设置得太高可能会影响行距

brdrcf3
-根据颜色表中的索引设置边框的颜色

正如您在示例中所看到的,您通过使用
{}
对来确定高亮显示的范围,从而结束单词的边框高亮显示

示例RTF还显示了段落边框,可以在其中分别设置顶部、底部、左侧和右侧边框的样式


一些RTF查看器可能无法实现文本和/或段落边框的显示。上面的示例在MicrosoftWord(2013)中正确显示,但我实际上似乎找不到在Word UI中编辑Word边框的方法。在“段落格式”对话框中可以编辑段落边框。

我无法让您使用示例。我正在使用C#中的RichTextBox。它可以显示表格。我不确定它是否和你的样品一样。我不需要表格,但我想要一些用边框包围的文本。啊,好吧,我没意识到你在使用RichTextBox——以为你在用C#创建RTF,以Word或类似的格式显示(示例在Word中看起来是正确的)。看起来RichTextBox不支持段落或文本边框的显示,这是RTF中应该采用的方式。我现在想不出另外一种在RTF中实现这一点的方法——表会干扰文档流(它们总是单独一行)。一些想法:*从RTF改为HTML-应该很容易设置边框*尝试另一种RTF控件(不同公司的售价为$$$),你能提供一个你在word中看到的小屏幕截图吗?或者给我一个如何让word“解释”RTF代码的提示?不确定如何在此处放置屏幕截图,但要将RTF放入word,请执行以下操作:打开记事本,将从上面复制的RTF代码粘贴到记事本,文件->另存为,文件名为“test.RTF”。检查文件实际上是“test.rtf”,而不是“test.rtf.txt”,并在必要时重命名。在Word中打开“test.rtf”。可能的dup:@ToastyMallows这是一个非常不同的路径。我正在寻找RTF解决方案。我不画画,我在操纵RTF代码的字符串。