CHARFORMAT2 structure
CHARFORMAT2 structure
Contains information about character formatting in a rich edit control. CHARFORMAT2 is a Microsoft Rich Edit 2.0 extension of the CHARFORMAT structure. Microsoft Rich Edit 2.0 allows you to use either structure with the EM_GETCHARFORMAT and EM_SETCHARFORMAT messages.
Syntax
typedef struct _charformat2 {
UINT cbSize;
DWORD dwMask;
DWORD dwEffects;
LONG yHeight;
LONG yOffset;
COLORREF crTextColor;
BYTE bCharSet;
BYTE bPitchAndFamily;
TCHAR szFaceName[LF_FACESIZE];
WORD wWeight;
SHORT sSpacing;
COLORREF crBackColor;
LCID lcid;
#if (_RICHEDIT_VER >= 0x0500)
union {
DWORD dwReserved;
DWORD dwCookie;
};
#else
DWORD dwReserved;
#endif
SHORT sStyle;
WORD wKerning;
BYTE bUnderlineType;
BYTE bAnimation;
BYTE bRevAuthor;
#if (_RICHEDIT_VER >= 0x0800)
BYTE bUnderlineColor;
#endif
} CHARFORMAT2;
Members
- cbSize
-
Type: UINT
-
指定的大小,以字节为单位的结构。之前将该结构传递给 rich edit 控件,将字节设置为CHARFORMAT或CHARFORMAT2结构的大小。如果字节等于CHARFORMAT结构的大小,则控件使用只有CHARFORMAT成员。
- dwMask
-
类型︰ dword 值
-
指定包含有效信息CHARFORMAT2结构的部件。DwMask成员可以从两个集中的位标志值的组合。一套指示是有效的结构成员。另一套指示中性格的成员的有效属性。
设置以下值,以指示性格的成员的有效属性。
价值 意义 - CFM_ALL
下列值的组合︰ CFM_EFFECTS |CFM_SIZE |CFM_FACE |CFM_OFFSET |CFM_CHARSET
- CFM_ALL2
下列值的组合︰ CFM_ALL |CFM_EFFECTS2 |CFM_BACKCOLOR |CFM_LCID |CFM_UNDERLINETYPE |CFM_WEIGHT |CFM_REVAUTHOR |CFM_SPACING |CFM_KERNING |CFM_STYLE |CFM_ANIMATION |CFM_COOKIE
- CFM_ALLCAPS
CFE_ALLCAPS值是有效的。
- CFM_EFFECTS
下列值的组合︰ CFM_EFFECTS2 |CFM_FONTBOUND |CFM_EXTENDED |CFM_MATHNOBUILDUP |CFM_MATH |CFM_MATHORDINARY
- CFM_BOLD
CFE_BOLD值是有效的。
- CFM_COLOR
CFE_AUTOCOLOR值是有效的或crTextColor成员是有效的。
- CFM_COOKIE
DwCookie值是有效的。
- CFM_DISABLED
CFE_DISABLED值是有效的。
- CFM_EXTENDED
CFE_EXTENDED值是有效的。
- CFM_EFFECTS
下列值的组合︰ CFM_BOLD |CFM_ITALIC |CFM_UNDERLINE |CFM_COLOR |CFM_STRIKEOUT |CFE_PROTECTED |CFM_LINK
- CFM_EFFECTS2
下列值的组合︰ CFM_EFFECTS |CFM_DISABLED |CFM_SMALLCAPS |CFM_ALLCAPS |CFM_HIDDEN |CFM_OUTLINE |CFM_SHADOW |CFM_EMBOSS |CFM_IMPRINT |CFM_REVISED |CFM_SUBSCRIPT |CFM_SUPERSCRIPT |CFM_BACKCOLOR
- CFM_EMBOSS
CFE_EMBOSS值是有效的。
- CFM_FONTBOUND
CFE_FONTBOUND值是有效的。
- CFM_HIDDEN
CFE_HIDDEN值是有效的。
- CFM_IMPRINT
CFE_IMPRINT值是有效的。
- CFM_ITALIC
CFE_ITALIC值是有效的。
- CFM_LINK
CFE_LINK值是有效的。
- CFM_LINKPROTECTED
CFE_LINKPROTECTED值是有效的。
- CFM_MATH
CFE_MATH值是有效的。
- CFM_MATHNOBUILDUP
CFE_MATHNOBUILDUP值是有效的。
- CFM_MATHORDINARY
CFE_MATHORDINARY值是有效的。
- CFM_OUTLINE
CFE_OUTLINE值是有效的。
- CFM_PROTECTED
CFE_PROTECTED值是有效的。
- CFM_REVISED
CFE_REVISION值是有效的。
- CFM_SHADOW
CFE_SHADOW值是有效的。
- CFM_SMALLCAPS
CFE_SMALLCAPS值是有效的。
- CFM_STRIKEOUT
CFE_STRIKEOUT值是有效的。
- CFM_SUBSCRIPT
CFE_SUBSCRIPT和CFE_SUPERSCRIPT的值是有效的。
- CFM_SUPERSCRIPT
CFE_SUBSCRIPT和CFE_SUPERSCRIPT的值是有效的。
- CFM_UNDERLINE
CFE_UNDERLINE值是有效的。
设置以下值,以指示有效结构成员。
价值 意义 - CFM_ANIMATION
BAnimation成员是有效的。
- CFM_BACKCOLOR
CrBackColor成员是有效的。
- CFM_CHARSET
BCharSet成员是有效的。
- CFM_COLOR
CrTextColor成员是有效的除非在性格的成员设置了CFE_AUTOCOLOR标志。
- CFM_FACE
成员是有效的。
- CFM_KERNING
WKerning成员是有效的。
- CFM_LCID
Lcid成员是有效的。
- CFM_OFFSET
正文成员是有效的。
- CFM_REVAUTHOR
BRevAuthor成员是有效的。
- CFM_SIZE
YHeight成员是有效的。
- CFM_SPACING
SSpacing成员是有效的。
- CFM_STYLE
SStyle成员是有效的。
- CFM_UNDERLINETYPE
BUnderlineType成员是有效的。
- CFM_WEIGHT
WWeight成员是有效的。
- 性格的
-
类型︰ dword 值
-
一组位标志,指定字符效果。有的标志只是为了兼容微软文本对象模型(汤姆) 界面;rich edit 控件存储的值,但不使用它来显示文本。
此成员可以是下列值的组合。
价值 意义 - CFE_ALLCAPS
字符是全部大写的字母。的值并不影响该控件显示的文本的方式。此值仅适用于版本早于微软丰富编辑 3.0。
- CFE_AUTOBACKCOLOR
背景颜色是GetSysColor(COLOR_WINDOW) 的返回值。如果设置了此标志, crBackColor成员将被忽略。
- CFE_AUTOCOLOR
文本颜色是GetSysColor(COLOR_WINDOWTEXT) 的返回值。如果设置了此标志, crTextColor成员将被忽略。
- CFE_BOLD
字符以粗体显示。
- CFE_DISABLED
字符会显示为带有抵消 3/4 点或一个像素的影子,两者中较大。
- CFE_EMBOSS
字符被浮雕。值不影响控制如何显示的文本。
- CFE_EXTENDED
字符是不太常见的脚本。支持脚本字体应该检查是否它有这种字符的字形。
- CFE_FONTBOUND
Rich edit 控件选择字体,还因为积极的字体不支持的字符的表表者。这个过程被称为字体绑定。
- CFE_HIDDEN
微软丰富编辑 3.0 及更高版本,不显示的字符。
- CFE_IMPRINT
作为印迹字符显示的字符。值不影响控制如何显示的文本。
- CFE_ITALIC
字符以斜体显示。
- CFE_LINK
Rich edit 控件可以发送EN_LINK通知代码,当鼠标指针停留在具有CFE_LINK效果的文本时,它接收鼠标消息。
- CFE_LINKPROTECTED
汉字是友好名称链接的一部分。
- CFE_MATH
字符在数学区。
- CFE_MATHNOBUILDUP
字符不参加数学构建了。例如,当应用于 a /,/ 不会用来建立一小部分。
- CFE_MATHORDINARY
作为一个数学区域内的普通文本显示的字符。
- CFE_OUTLINE
字符显示为空心字符。值不影响控制如何显示的文本。
- CFE_PROTECTED
字符的保障;尝试对它们进行修改会导致EN_PROTECTED通知代码。
- CFE_REVISED
字符被标记为修订。
- CFE_SHADOW
作为隐藏字符显示的字符。值不影响控制如何显示的文本。
- CFE_SMALLCAPS
字符是在小型大写字母。值不影响控制如何显示的文本。
- CFE_STRIKEOUT
字符是剔除。
- CFE_SUBSCRIPT
字符的下标。CFE_SUPERSCRIPT和CFE_SUBSCRIPT的值是互斥的。对于这两个值,控件将自动计算偏移量和较小的字体大小。或者,您可以使用yHeight与正文成员显式指定字体大小和下标和上标字符偏移量。
- CFE_SUPERSCRIPT
字符是上标。
- CFE_UNDERLINE
带下划线的字符。
- yHeight
-
类型︰长
-
指定字符的高度,以缇为单位 (1/1440 英寸) 或 1/20 的打印机点。若要使用此成员,在设置了CFM_SIZE标志dwMask成员。
- 正文
-
类型︰长
-
字符偏移量从基线,以缇为单位。如果此成员的值为正值,字符是上标;如果值为负值,字符是下标。若要使用此成员,在设置了CFM_OFFSET标志dwMask成员。
- crTextColor
-
类型︰ COLORREF
-
文本颜色。若要使用此成员,在设置了CFM_COLOR标志dwMask成员。如果指定了CFE_AUTOCOLOR字符效果,此成员将被忽略。若要生成COLORREF,使用RGB宏。
- bCharSet
-
类型︰字节
-
字符集的值。它可以是指定的LOGFONT结构的lfCharSet成员的值之一。若要使用此成员,在设置了CFM_CHARSET标志dwMask成员。
- bPitchAndFamily
-
类型︰字节
-
指定字体系列和球场。此成员是LOGFONT结构的lfPitchAndFamily成员相同。
- 零
-
类型︰ TCHAR[LF_FACESIZE]
-
Null 终止字符数组指明字体名称。若要使用此成员,在设置了CFM_FACE标志dwMask成员。
- wWeight
-
类型︰ WORD
-
字体粗细。此成员是LOGFONT结构的lfWeight成员相同。若要使用此成员,在设置了CFM_WEIGHT标志dwMask成员。
- sSpacing
-
类型︰短
-
字母,以缇为单位之间的水平间距。此值已由 rich edit 控件; 显示的文本没有影响它是包括与 Windows 汤姆接口的兼容性。若要使用此成员,在设置了CFM_SPACING标志dwMask成员。
- crBackColor
-
类型︰ COLORREF
-
背景色。若要使用此成员,在设置了CFM_BACKCOLOR标志dwMask成员。如果指定了CFE_AUTOBACKCOLOR字符效果,此成员将被忽略。要生成,使用宏。
- lcid
-
类型︰ LCID
-
包含在较低的字和排序标识符的语言标识符和保留的价值较高的字在一个 32 位的区域设置标识符。此成员已由 rich edit 控件显示的文本没有影响,但拼写和语法检查程序可以使用它来处理依赖于语言的问题。您可以使用宏来创建一个LCID值。若要使用此成员,在设置了CFM_LCID标志dwMask成员。
- dwReserved
-
类型︰ dword 值
-
保留;值必须为零。
- dwCookie
-
类型︰ dword 值
-
客户端 cookie。此成员是不透明的 rich edit 控件。
- dwReserved
-
类型︰ dword 值
-
保留;值必须为零。
- sStyle
-
类型︰短
-
字符样式的句柄。此值已由 rich edit 控件; 显示的文本没有影响它是包括与 WindowsTOM 接口的兼容性。若要使用此成员,在设置了CFM_STYLE标志dwMask成员。详细信息请参阅汤姆文档。
- wKerning
-
类型︰ WORD
-
字体大小,上面进行字偶间距调整的字符 (yHeight) 的值。此值已由 rich edit 控件; 显示的文本没有影响它是包括与汤姆接口的兼容性。若要使用此成员,在设置了CFM_KERNING标志dwMask成员。
- bUnderlineType
-
类型︰字节
-
指定的下划线类型。若要使用此成员,在设置了CFM_UNDERLINETYPE标志dwMask成员。此成员可以是下列值之一。
价值 意义 - CFU_CF1UNDERLINE
结构将CHARFORMAT位下划线映射到CHARFORMAT2,(也就是说,它执行下划线CHARFORMAT类型对此文本)。
- CFU_INVERT
为 ime,假选择。
- CFU_UNDERLINE
带有一条实线下划线的文本。
- CFU_UNDERLINEDASH
带有虚线下划线的文本。
- CFU_UNDERLINEDASHDOT
虚线和点线线带有下划线的文本。
- CFU_UNDERLINEDASHDOTDOT
带有虚线和加倍的虚线下划线的文本。
- CFU_UNDERLINEDOTTED
带有虚线下划线的文本。版本还带有固体下划线显示比微软丰富编辑 3.0,早的文本。
- CFU_UNDERLINEDOUBLE
双线带有下划线的文本。Rich edit 控件显示与固体的下划线的文本。
- CFU_UNDERLINEDOUBLEWAVE
显示为CFU_UNDERLINEWAVE。
- CFU_UNDERLINEHAIRLINE
显示为CFU_UNDERLINE。
- CFU_UNDERLINEHEAVYWAVE
显示为CFU_UNDERLINEWAVE。
- CFU_UNDERLINELONGDASH
显示为CFU_UNDERLINEDASH。
- CFU_UNDERLINENONE
没有下划线。这是默认设置。
- CFU_UNDERLINETHICK
显示为CFU_UNDERLINE。
- CFU_UNDERLINETHICKDASH
显示为CFU_UNDERLINEDASH。
- CFU_UNDERLINETHICKDASHDOT
显示为CFU_UNDERLINEDASHDOT。
- CFU_UNDERLINETHICKDASHDOTDOT
显示为CFU_UNDERLINEDASHDOT。
- CFU_UNDERLINETHICKDOTTED
显示为CFU_UNDERLINEDOT。
- CFU_UNDERLINETHICKLONGDASH
显示为CFU_UNDERLINEDASH。
- CFU_UNDERLINEWAVE
RichEdit 4.1 及以后︰ 带有波浪线下划线的文本。
- CFU_UNDERLINEWORD
RichEdit 4.1 及以后︰ 只有词下划线。Rich edit 控件显示与固体的下划线的文本。
- bAnimation
-
类型︰字节
-
文本动画类型。此值已由 rich edit 控件; 显示的文本没有影响它是包括与汤姆接口的兼容性。若要使用此成员,在设置了CFM_ANIMATION标志dwMask成员。
- bRevAuthor
-
类型︰字节
-
标识作者进行修改的索引。Rich edit 控件为每个不同的作者索引使用不同的文本颜色。若要使用此成员,在设置了CFM_REVAUTHOR标志dwMask成员。
- bUnderlineColor
-
类型︰字节
-
Underline color.
Remarks
To turn off a formatting attribute, set the appropriate value in dwMask but do not set the corresponding value in dwEffects. For example, to turn off italics, set CFM_ITALIC but do not set CFE_ITALIC.
Requirements
|
Minimum supported client |
Windows Vista [desktop apps only] |
|---|---|
|
Minimum supported server |
Windows Server 2003 [desktop apps only] |
|
Header |
|
|
Unicode and ANSI names |
CHARFORMAT2W (Unicode) and CHARFORMAT2A (ANSI) |
See also
CHARFORMAT2 structure的更多相关文章
- [LeetCode] All O`one Data Structure 全O(1)的数据结构
Implement a data structure supporting the following operations: Inc(Key) - Inserts a new key with va ...
- [LeetCode] Add and Search Word - Data structure design 添加和查找单词-数据结构设计
Design a data structure that supports the following two operations: void addWord(word) bool search(w ...
- [LeetCode] Two Sum III - Data structure design 两数之和之三 - 数据结构设计
Design and implement a TwoSum class. It should support the following operations:add and find. add - ...
- Theano Graph Structure
Graph Structure Graph Definition theano's symbolic mathematical computation, which is composed of: A ...
- 修复 OS X 的系统盘出现 Invalid Node Structure 问题
昨晚我的MBP突然出现启动的时候会自动关机的问题.开机进入到 Recovery 模式之后,用 Disk Utility 检查系统盘,发现 Invalid Node Structure 错误, Disk ...
- Finger Trees: A Simple General-purpose Data Structure
http://staff.city.ac.uk/~ross/papers/FingerTree.html Summary We present 2-3 finger trees, a function ...
- AVEVA Model Data Exchange Exports Structure Models
AVEVA Model Data Exchange Exports Structure Modelseryar@163.com Use Model Data Exchange Addin to exp ...
- Mesh Data Structure in OpenCascade
Mesh Data Structure in OpenCascade eryar@163.com 摘要Abstract:本文对网格数据结构作简要介绍,并结合使用OpenCascade中的数据结构,将网 ...
- Structure And Representation Of MIB Object Names - SNMP Tutorial
30.8 Structure And Representation Of MIB Object Names We said that ASN.1 specifies how to represent ...
随机推荐
- 一个App完成入门篇(一)-从Hello world开始
程序员学习新技术都是通过Hello World开始的,我们也不例外.第一课我们简单了解利用do平台开发App的基本流程,能了解到的知识点是: 开发环境搭建 创建开发者账号 新建项目 拖拽一个组件 修改 ...
- 团队项目——站立会议DAY14
第十四次站立会议记录: 参会人员:张靖颜,钟灵毓秀,何玥,赵莹,王梓萱 项目进展: 1.张靖颜:修改页面,查漏补缺.进行需求分析,监督每个组员,把大家的问题都一一梳理. 2.钟灵毓秀:继续修改模块代码 ...
- Nim语言的模块化编程
前言 Nim支持把一大段程序分成若干个模块 一个模块就是一个源代码文件 每个模块都拥有它自己的名称空间 模块化可以起到封装(信息隐藏)和分步编译的作用 一个模块可以通过import语句获得另一个模块的 ...
- 用canvas开发H5游戏小记
自神经猫风波之后,微信中的各种小游戏如雨后春笋般目不暇接,这种低成本,高效传播的案例很是受开发者青睐.作为一名前端,随手写个这样的小游戏出来应该算是必备技能吧.恰逢中秋节,部门决定上线一个小游戏,在微 ...
- 一天一小段js代码(no.3)
//遍历属性,返回名值对 function outputAttributes(element){ var pairs = new Array(), attrName, attrValue, i, le ...
- Unity3D音乐音效研究-MIDI与波表
其实音乐音效这个命题本身没什么好研究的. Unity3D提供了丰富的结构和使用方式,足够使用了. 但是我有一些小小的想法和需求,一般的Unity资料并没有给我答案. 一个是容量要小.MP3.OGG的高 ...
- 做NavMesh相关工作时收集的一些文章
三角形拾取 http://www.blackpawn.com/texts/pointinpoly/default.htmlCS NavMesh使用手册https://developer.valveso ...
- 异步编程之Javascript Promises 规范介绍
什么是 Promises Promises是一种关于异步编程的规范,目的是将异步处理对象和处理规则进行规范化,为异步编程提供统一接口. 传统的回调函数 说到JavaScript的异步编程处理,通常我们 ...
- Repeater绑定数组并显示其值
web开发中,尤其是对于数据展示,不得不说Repeater是一个万能的控件,而且使用也很方便. 在ASP.NET中将数组绑定到Repeater中请问如何在Repeater前台页面中显示该数组的值? s ...
- 关于session的小结
session的原理 Session对象的原理在于,服务器可以为客户端创建并维护一个所谓的Session对象,用于存放数据. 在创建Session对象的同时,服务器将会为该Session对象产生一个唯 ...