TextFormatFlags 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定文本字符串的显示和布局信息。
此枚举支持其成员值的按位组合。
public enum class TextFormatFlags
[System.Flags]
public enum TextFormatFlags
[<System.Flags>]
type TextFormatFlags =
Public Enum TextFormatFlags
- 继承
- 属性
字段
| 名称 | 值 | 说明 |
|---|---|---|
| Default | 0 | 应用默认格式(左对齐)。 |
| GlyphOverhangPadding | 0 | 将填充添加到边界矩形以容纳悬停字形。 这是默认值。 |
| Left | 0 | 对齐剪辑区域左侧的文本。 这是默认值。 |
| Top | 0 | 对齐边框顶部的文本。 这是默认值。 |
| HorizontalCenter | 1 | 在边框内水平居中文本。 |
| Right | 2 | 对齐剪辑区域右侧的文本。 |
| VerticalCenter | 4 | 将文本垂直居中,位于边框内。 |
| Bottom | 8 | 对齐边框底部的文本。 仅当文本是单行时应用。 |
| WordBreak | 16 | 在单词末尾中断文本。 |
| SingleLine | 32 | 在单个行中显示文本。 |
| ExpandTabs | 64 | 展开制表符。 每个选项卡的默认字符数为 8。 和WordEllipsisPathEllipsisEndEllipsis值不能用于 ExpandTabs。 |
| NoClipping | 256 | 允许字形的悬停部分和展开的文本到达格式矩形外部以显示。 |
| ExternalLeading | 512 | 在行高中包含字体外部前导。 通常,外部前导不包含在文本行的高度中。 |
| NoPrefix | 2048 | 关闭前缀字符的处理。 通常,安和号(>)助记前缀字符被解释为指令,以强调后面的字符,并将双和(&&&)助记前缀字符解释为一个指令,以打印单个和号。 通过指定 NoPrefix,此处理处于关闭状态。 例如,应用了 NoPrefix “A&bc&d”的输入字符串将导致输出“A&bc&d”。 与 |
| Internal | 4096 | 使用系统字体计算文本指标。 |
| TextBoxControl | 8192 | 指定文本的格式应设置为在控件上 TextBox 显示。 |
| PathEllipsis | 16384 | 删除剪裁行的中心,并将其替换为省略号。 用于绘制文本时 |
| EndEllipsis | 32768 | 删除剪裁行的末尾,并用省略号替换它们。 用于绘制文本时 |
| ModifyString | 65536 | 对绘制的文本或文本度量没有影响。 用于绘制文本时 |
| RightToLeft | 131072 | 显示从右到左的文本。 |
| WordEllipsis | 262144 | 将行剪裁到最接近的单词,省略号放置在剪裁行的末尾。 与 EndEllipsis 和 PathEllipsis. |
| NoFullWidthCharacterBreak | 524288 | 无效的旧值。 它可防止在双宽字符字符串处换行,以便换行规则与单宽字符字符串的换行规则等效。 |
| HidePrefix | 1048576 | 忽略文本中的 ampersand (> 前缀字符),以便后面的字母不会带下划线,但仍会处理其他助记前缀字符。 |
| PrefixOnly | 2097152 | 仅在与号前缀字符之后字符的位置绘制下划线,并且不会在字符串中绘制任何其他字符。 |
| PreserveGraphicsClipping | 16777216 | 保留对象 Graphics 指定的剪辑。 仅适用于接收 |
| PreserveGraphicsTranslateTransform | 33554432 | 保留由一个 Graphics. 指定的转换。 仅适用于接收 |
| NoPadding | 268435456 | 不向边界矩形添加填充。 |
| LeftAndRightPadding | 536870912 | 将填充添加到边界矩形的两侧。 |
示例
以下示例演示如何使用 TextFormatFlags 枚举。 若要运行此示例,请将以下代码粘贴到Windows窗体中。 从表单的RenderText6事件处理程序进行调用Paint,传递e方式为 PaintEventArgs.
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 。