MFC Windows 程序设计->GetDeviceCaps

 

CDC::GetDeviceCaps

 

int GetDeviceCaps(int nIndex) const;

 

返回值:如果成功,则返回所需要的能力值。

 

参数:

nIndex 指定返回信息类型,可为下列值之一:

· DRIVERVERSION 版本号,例如:0x100表示1.0版

· TECHNOLOGY 设备技术,可为下列值之一:

含义

DT_PLOTTER 矢量绘图机

DT_RASDISPLAY 光栅显示

DT_RASPRINTER 光栅打印机

DT_RASCAMERA 光栅照相机

DT_CHARSTREAM 字符流

DT_METAFILE 元文件

DT_DISPFILE 显示文件

· HORZSIZE 物理显示宽度(以毫米为单位)。

· VERTSIZE 物理显示高度(以毫米为单位)。

· HORZRES 显示宽度(用像素表示)。

· VERTRES 显示高度(用光栅线表示)。

· LOGPIXELSX 沿显示宽度方向,每一逻辑单位的像素数。

· LOGPIXELSY 沿显示高度方向,每一逻辑单位的像素数。

· BITPIXEL 每一像素的颜色字节数。

· PLANES 颜色位面数。

· NUMBRUSHES 指定设备的画刷数目。

· NUMPENS 指定设备的画笔数目。

· NUMFONTS 指定设备的字体数目。

· NUMCOLORS 设备颜色表的入口数目。

· ASPECTX 用于描线的设备像素的相对宽度。

· ASPECTY 用于描线的设备像素的相对高度。

· ASPECTXY 用于描线的设备像素的对角线宽度。

· PDEVICESIZE PDEVICE内部数据结构的尺寸。

· CLIPCAPS 设备的剪切能力。可以为以下值之一:

含义

CP_NONE 输出不被剪切

CP_RECTANGLE 输出被剪切到矩形

CP_REGION 输出被剪切到区域

· SIZEPALETTE 系统调色板的入口数。只有设置驱动程序在RASTERCAPS索引中设置了RC_PALETTE,该参数才有效。

· NUMRESERVER 系统调色板的保留的入口数。只有设置驱动程序在RASTERCAPS索引中设置了RC_PALETTE,该参数才有效。

· COLORRES 设备实际的颜色分辨率,用位/像素表示。只有设置驱动程序在RASTERCAPS索引中设置了RC_PALETTE,该参数才有效。

· RASTERCAPS 表示设备光栅能力的值。可以为以下值的组合:

含义

RC_BANDING 需要绑定支持

RC_BIGFONT 支持大于64K的字体

RC_BITBLT 具有传输位图的能力

RC_BITMAP64 支持大于64K的位图

RC_DEVBITS 支持设备位图

RC_DI_BITMAP 具有支持SetDIBits和GetDIBits Windows 函数的能力

RC_DIBTODEV 具有支持SetDIBitsToDevice Windows 函数的能力

RC_FLOODFILL 具有全面填充能力

RC_GD120_OUTPUT 支持Windows 2.0RC_GD120_STATE设备上下文中包括状态块

RC_NONE 不支持光栅操作

RC_OP_DX_OUTPUT 支持设备白底和DX数组

RC_PALETTE 指定基于调色板的设备

RC_SAVEBITMAP 支持在本地保存位图的能力

RC_SCALING 具有缩放能力

RC_STRETCHBLT 能执行StretchBlt成员函数

RC_STRETCHDIB 能执行Windows StretchDIBits函数

· CURVECAS 设备的曲线能力。可为以下值的组合:

含义

CC_NONE 支持曲线

CC_CIRCLES 支持圆

CC_PIE 支持饼图

CC_CHORD 支持弧

CC_ELLIPSES 支持椭圆

CC_WIDE 支持宽边界

CC_STYLED 支持边界风格

CC_WIDESTYLED 支持加宽的边界风格

CC_INTERIORS 支持内部功能

CC_ROUNDRECT 支持圆角矩形

· LINECAPS 设备的绘制直线能力。可为以下值的组合:

含义

LC_NONE 不支持直线

LC_POLYLINE 支持多直线

LC_MARKER 支持标记

LC_POLYMARKER 支持多标记

LC_WIDE 支持加宽直线

LC_STYLED 支持直线风格

LC_WIDESTYLED 支持加宽的直线风格

LC_INTERIORS 支持内部功能

· POLYGONALCAPS 设备绘制多边形的能力。可为以下值的组合:

含义

PC_NONE 不支持多边形

PC_POLYGON 支持多边形

PC_RECTANGLE 支持矩形

PC_WINDPOLYGON 支持多边形的弯曲数目

PC_SCANLINE 支持扫描直线

PC_WIDE 支持加宽边界

PC_STYLED 支持边界风格

PC_WIDESTYLED 支持加宽的直线风格

PC_INTERORS 支持内部功能

· TEXTCAPS 设备绘制文本的能力。可为以下值的组合:

含义

TC_OP_CHARACTER 支持字符精确输出,设备可将设备字体置于任何像素位置。这要求设备带有设备字体

TC_OP_STROKE 支持笔画精确输出,设备可覆盖设备字体的重复动作

TC_CP_STROKE 支持笔画剪切输出,设备可在像素边界剪切设备字体

TC_CR_90 支持90度的字符旋转,设备一次只能旋转字符90度

TC_CR_ANY 支持任意角度的字符旋转

TC_SF_X_YINDEP 支持x,y方向上的独立度量,设备可以分别从x,y方向上度量设备字体

TC_SA_DOUBLE 支持度量倍增字符,设备可将设备字体放大一倍

TC_SA_INTEGER 支持整数倍度量。设备可将设备字体放大至任意整数倍

TC_SA_CONTIN 支持任意倍度量。设备可将设备字体放大至任意倍。但仍保持X和Y的比率

TC_EA_DOUBLE 支持字符重量加倍,设备字体可设置为粗体。如果此位没有设置打印驱动程序。GDI将通过两次打印的方法创建粗体的设备字体

TC_IA_ABLE 支持斜体字符,设备字体可设置为斜体。如果此位没有设置,GDI认为不能得到斜体

TC_UA_ABLE 支持下划线,设备字体可设置为下划线。如果此位没有设置,GDI为设备字体创建下划线

TC_SO_ABLE 支持空心字符,设备字体可设置为空心。如果此位没有设置,GDI为设备字体创建空心

TC_RA_ABLE 支持光栅字体,GDI应为设备列举可用的光栅或TrueType字体,以便对EnumFonts或EnumFontFamilies函数的调用作出反应。如果此位没有设置,当这些函数调用时,光栅或字体不会加以列举

TC_VA_ABLE 支持矢量字体,GDI应为设备列举可用的矢量或TrueType字体,以便对EnumFonts或EnumFontFamilies函数的调用作出反应。这对矢量设备很重要(如绘图机),显示程序(它们必须使用光栅字体)和光栅打印驱动程序列举矢量字体,因为GDI在将矢量字体送到驱动程序之前要将其进行光栅处理

TC_RESERVED 反转,必须设置为0

 

说明:检取有关显示设备的特殊设备宽列信息。

 

请参阅:::GetDeviceCaps

 

posted @ 2011-04-02 16:54  好好学习,天天进步  阅读(472)  评论(0编辑  收藏  举报