TextFormatFlags 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定文本字符串的显示和布局信息。
此枚举支持其成员值的按位组合。
public enum class TextFormatFlags
[System.Flags]
public enum TextFormatFlags
[<System.Flags>]
type TextFormatFlags =
Public Enum TextFormatFlags
- 继承
- 属性
字段
| 名称 | 值 | 说明 |
|---|---|---|
| Bottom | 8 | 对齐边框底部的文本。 仅对于单行文本,才可应用此成员。 |
| Default | 0 | 应用默认的格式设置,即左对齐。 |
| EndEllipsis | 32768 | 移除修整行的结尾,并以省略号进行替换。 当用于通过 |
| ExpandTabs | 64 | 扩展制表符。 每个制表符的默认字符数是 8。 WordEllipsis、PathEllipsis 和 EndEllipsis 值不能与 ExpandTabs 一起使用。 |
| ExternalLeading | 512 | 在行高中包括字体外部间隙。 通常,文本的行高度中不包括外部间隙。 |
| GlyphOverhangPadding | 0 | 在边框中添加空白边距以容纳延伸的标志符号。 这是默认值。 |
| HidePrefix | 1048576 | 忽略文本中的与号 (&) 前缀字符,以便后面的字母不会加下划线,但仍处理其他助记符前缀字符。 |
| HorizontalCenter | 1 | 将边框内的文本水平居中对齐。 |
| Internal | 4096 | 使用系统字体计算文本规格。 |
| Left | 0 | 对齐剪辑区域左侧的文本。 这是默认值。 |
| LeftAndRightPadding | 536870912 | 在边框的两边添加空白边距。 |
| ModifyString | 65536 | 对绘制的文本或文本度量没有影响。 当用于通过 |
| NoClipping | 256 | 允许显示标志符号的延伸部分和延伸到格式化矩形外的未换行文本。 |
| NoFullWidthCharacterBreak | 524288 | 没有作用的旧值。 它可防止双倍宽度字符串中出现换行符,这样一来,换行规则会等同于单倍宽度字符串的换行规则。 |
| NoPadding | 268435456 | 不在边框中添加空白边距。 |
| NoPrefix | 2048 | 关闭对前缀字符的处理。 通常,将与号 (&) 助记键前缀字符解释为指令来强调后面的字符,双和号 (&&) 助记键前缀字符作为指令来打印单个与数。 通过指定 NoPrefix,可以关闭此处理。 例如,应用的输入字符串“A&bc&&d” NoPrefix 将导致输出“A&bc&&d”。 与 |
| PathEllipsis | 16384 | 移除修整行的中心并以省略号进行替换。 当用于通过 |
| PrefixOnly | 2097152 | 仅在与号 (&) 前缀字符之后的字符位置绘制下划线,不绘制字符串中的任何其他字符。 |
| PreserveGraphicsClipping | 16777216 | 保留 Graphics 对象指定的剪辑。 仅适用于接收实际上是一个 IDeviceContext 的 Graphics 的方法。 |
| PreserveGraphicsTranslateTransform | 33554432 | 保留 Graphics 指定的转换。 仅适用于接收实际上是一个 IDeviceContext 的 Graphics 的方法。 |
| Right | 2 | 对齐剪辑区域右侧的文本。 |
| RightToLeft | 131072 | 从右向左显示文本。 |
| SingleLine | 32 | 显示单行文本。 |
| TextBoxControl | 8192 | 指定应格式化文本以在 TextBox 控件中显示。 |
| Top | 0 | 对齐边框顶部的文本。 这是默认值。 |
| VerticalCenter | 4 | 在边框内部垂直居中对齐文本。 |
| WordBreak | 16 | 在单词的结尾处断开文本。 |
| WordEllipsis | 262144 | 将行修整到最近的单词处,并在修整行的结尾处放置省略号。 与 EndEllipsis 和 PathEllipsis 进行比较。 |
示例
下面的示例演示如何使用 TextFormatFlags 枚举。 若要运行此示例,请将以下代码粘贴到 Windows 窗体中。 从窗体的Paint事件处理程序调用 RenderText6 ,作为 ePaintEventArgs传递。
private void RenderText6(PaintEventArgs e)
{
TextFormatFlags flags = TextFormatFlags.Bottom | TextFormatFlags.EndEllipsis;
TextRenderer.DrawText(e.Graphics, "This is some text that will be clipped at the end.", this.Font,
new Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags);
}
Private Sub RenderText6(ByVal e As PaintEventArgs)
Dim flags As TextFormatFlags = TextFormatFlags.Bottom Or _
TextFormatFlags.EndEllipsis
TextRenderer.DrawText(e.Graphics, _
"This is some text that will be clipped at the end.", _
Me.Font, New Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags)
End Sub
注解
枚举 TextFormatFlags 在绘制和测量文本时由 TextRenderer 使用。
TextRenderer 不支持向绘制的文本添加制表位,虽然可以使用 ExpandTabs 标志扩展现有制表位。