获取GDI对象的属性信息

来源: LUPA开源社区
发布时间: 2007-06-25 09:49 版权申明

字体:


文章来源于http://www.lupaworld.com
苏金国

  要获得GDI对象的属性信息,可以调用GDIObject::GetObject函数,这个函数将指定图表设备的消息写入到缓冲区。

  下面将设计几个有用的辅助函数:

  //字体是否加粗

  BOOL IsFontBold (const CFont&&font)

  {

  //取得字体信息

  LOGFONT stFont;

  font.GetObject (sizeof (LOGFONT), &&stFont);

  return (stFont.lfBold)? TRUE: FALSE;

  }

  //确定位图大小

  CSize GetBitmapSize (const CBitmap&&bitmap)

  {

  //取得位图信息

  BITMAP stBitmap;

bitmap.GetObject (sizeof (BITMAP), &&stBitmap);

  return CSize (stBitmap.bmWidth, stBitmap. bmHeight);

  }

  //创建一个与刷子同色的画笔

  BOOL CreatePenFromBrush (Cpen&&pen, cost Cbrush&&brush)

  {

  //取得刷子信息

  LOGBRUSH stBrush;

  brush.Getobject (sizeof (LOGBRUSH), &&stBrush);

  //创建画笔,其颜色指定为刷子颜色

  return pen. CreateOpen (PS_SOLID, 0, stBrush.ibColor);

  }

  由此可见,我们可以在编写图形应用程序时,充分利用Getobject函数,设计出与应用要求相关的操作,这个工作既简单,又非常有意义。   
文章来源于http://www.lupaworld.com

声明:LUPA开源社区刊登此文只为传递信息,并不表示赞同或者反对。

查看全部评论(0)我来说两句 直接向LUPA提出您的宝贵建议

-5 -3 -1 - +1 +3 +5