CMFCFontInfo 类

CMFCFontInfo 类描述字体的名称和其他属性。

语法

class CMFCFontInfo : public CObject

成员

公共构造函数

名称 描述
CMFCFontInfo 构造 CMFCFontInfo 对象。

公共方法

名称 描述
CMFCFontInfo::GetFullName 检索字体及其字符集(字母系统)的串联名称。

数据成员

名称 描述
CMFCFontInfo::m_nCharSet 一个值,它指定与字体关联的字符集(字母系统)。
CMFCFontInfo::m_nPitchAndFamily 一个值,它指定字体的间距和系列。
CMFCFontInfo::m_nType 一个值,它指定字体的类型。
CMFCFontInfo::m_strName 字体的名称,例如 Arial
CMFCFontInfo::m_strScript 与字体关联的字符集(字母系统)的名称。

备注

你可以向 CMFCToolBarFontComboBox 类的一个项附加 CMFCFontInfo 对象。 调用 CMFCToolBarFontComboBox::GetFontDesc 方法来检索 CMFCFontInfo 对象的指针。

示例

下面的示例演示了如何使用 CMFCFontInfo 类的各种成员。 该示例演示如何从 CMFCRibbonFontComboBox 获取 CMFCFontInfo 对象,以及如何访问其局部变量。 此示例是 MSOffice 2007 演示示例的一部分。

CMFCRibbonFontComboBox *pFontCombo = DYNAMIC_DOWNCAST(CMFCRibbonFontComboBox, pRibbon->FindByID(ID_FONT_FONT));
if (pFontCombo == NULL)
{
   return;
}

CCharFormat cf;
cf.szFaceName[0] = NULL;
cf.dwMask = CFM_FACE | CFM_CHARSET;

const CMFCFontInfo *pDesc = pFontCombo->GetFontDesc();
ASSERT_VALID(pDesc);
ASSERT(pDesc->m_strName.GetLength() < LF_FACESIZE);

#if _MSC_VER >= 1300
lstrcpyn(cf.szFaceName, pDesc->m_strName, LF_FACESIZE);
#else
lstrcpynA(cf.szFaceName, T2A((LPTSTR)(LPCTSTR)pDesc->m_strName), LF_FACESIZE);
#endif

cf.bCharSet = pDesc->m_nCharSet;
cf.bPitchAndFamily = pDesc->m_nPitchAndFamily;

要求

头文件:afxtoolbarfontcombobox.h

CMFCFontInfo::CMFCFontInfo

构造 CMFCFontInfo 对象。

CMFCFontInfo(
    LPCTSTR lpszName,
    LPCTSTR lpszScript,
    BYTE nCharSet,
    BYTE nPitchAndFamily,
    int nType);

CMFCFontInfo(const CMFCFontInfo& src);

参数

lpszName
[in] 字体的名称。 有关详细信息,请参阅 LOGFONT 结构的 lfFaceName 成员。

lpszScript
[in] 字体的字母系统(字符集)的名称。

nCharSet
[in] 一个值,它指定字体的字符集(字母系统)。 有关详细信息,请参阅 LOGFONT 结构的 lfCharSet 成员。

nPitchAndFamily
[in] 一个值,它指定字体的间距和系列。 有关详细信息,请参阅 LOGFONT 结构的 lfPitchAndFamily 成员。

nType
[in] 一个值,它指定字体类型。 此参数可以是 DEVICE_FONTTYPE、RASTER_FONTTYPE 和TRUETYPE_FONTTYPE 的按位组合 (OR)。

src
[in] 一个现有的 CMFCFontInfo 对象,其成员用于构造此 CMFCFontInfo 对象。

返回值

注解

本文档中的术语“字符集”和“字母系统”可互换使用。 字母系统也称为写入系统,它是字符和规则的集合,用于以一种或多种语言编写这些字符。 字符集合包括该字母系统中使用的字母表和标点符号。 例如,拉丁字母系统用于英语中,因为美国口语常常含有拉丁语,其字母表包括 A 到 Z 的字符。LOGFONT 结构的 lfCharSet 成员指定字符集。 例如,值 ANSI_CHARSET 指定 ANSI 字符集,其中包括拉丁字母系统的字母表。

CMFCFontInfo::GetFullName

检索字体及其字符集(字母系统)的串联名称。

CString GetFullName() const;

返回值

包含字体名称和字母系统的字符串。

备注

使用此方法获取字体的全名。 例如,如果字体名为 Arial,字体的字母系统为 Cyrillic,则此方法返回“Arial (Cyrillic)”

CMFCFontInfo::m_nCharSet

一个值,它指定与字体关联的字符集(字母系统)。

const BYTE m_nCharSet;

备注

有关详细信息,请参阅 CMFCFontInfo::CMFCFontInfo 构造函数的 nCharSet 参数

CMFCFontInfo::m_nPitchAndFamily

一个值,它指定字体的间距(点大小)和系列(例如:有衬线、无衬线和固定宽度)。

const BYTE m_nPitchAndFamily;

注解

有关详细信息,请参阅 CMFCFontInfo::CMFCFontInfo 构造函数的 nPitchAndFamily 参数

CMFCFontInfo::m_nType

一个值,它指定字体的类型。

const int m_nType;

注解

有关详细信息,请参阅 CMFCFontInfo::CMFCFontInfo 构造函数的 nType 参数

CMFCFontInfo::m_strName

字体的名称,例如 Arial

const CString m_strName;

备注

有关详细信息,请参阅 CMFCFontInfo::CMFCFontInfo 构造函数的 lpszName 参数

CMFCFontInfo::m_strScript

与字体关联的字符集(字母系统)的名称。

const CString m_strScript;

注解

有关详细信息,请参阅 CMFCFontInfo::CMFCFontInfo 构造函数的 lpszName 参数

另请参阅

层次结构图

CMFCToolBarFontComboBox 类
CMFCToolBarFontSizeComboBox 类