Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16497689
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 20:56:35

下载本文示例代码
天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。(首月免费)   一. GDI编程基础   字幕叠加,应当是属于图形、图像处理的范畴。在Windows平台上,图形、图像处理的方法当然首选GDI(Graphics Device Interface,图形设备接口)。GDI是什么?GDI其实是一套API函数;它们功能丰富,使用起来简单、灵活。下面,我们首先来介绍一些GDI编程的基础知识。   GDI函数有很多,我们大致可以把它们分成如下几类:  · 设备上下文(Device Context,简称DC)函数,如GetDC、CreateDC、DeleteDC等;  · 画线函数,如LineTo、Polyline、Arc等;  · 填充画图函数,如Ellipse、FillRect、Pie等;  · 画图属性函数,如SetBkColor、SetBkMode、SetTextColor等;  · 文本、字体函数,如TextOut、GetTextExtentPoint32、GetFontData等;  · 位图函数,如SetPixel、BitBlt、StretchBlt等;  · 坐标函数,如DPtoLP、LPtoDP、ScreenToClient、ClientToScreen等;  · 映射函数,如SetMapMode、SetWindowExtEx、SetViewportExtEx等;  · 元文件(MetaFile)函数,如PlayMetaFile、SetWinMetaFileBits等;  · 区域(Region)函数,如FillRgn、FrameRgn、InvertRgn等;  · 路径(Path)函数,如BeginPath、EndPath、StrokeAndFillPath等;  · 裁剪(Clipping)函数,如SelectClipRgn、SelectClipPath等。  上述这些函数可以完成绘制用户界面中的各个部分,包括我们在Windows平台上司空见惯的窗口、菜单、工具条、按钮等。除了完成显示操作功能外,GDI还提供了一些绘图对象,用以渲染显示。这些GDI对象包括:  设备上下文(DC)——具有如显示器或打印机等输出设备的绘图属性信息的数据结构;  画笔(Pen)——用于绘制线条;  画刷(Brush)——用于图案的填充;  字体(Font)——用于确定文本字符的样式;  位图(Bitmap)——用于存储图像;  调色板(Palette)——屏幕上画图时可以使用的一些颜色的集合。  DC在GDI中是一个非常重要的概念。在MSDN上查看各个GDI函数的使用说明,我们会发现大部分GDI函数都有一个HDC类型的参数;HDC就是DC句柄。Windows应用程序进行图形、图像处理的一般操作步骤如下:  1. 取得指定窗口的DC;  2. 确定使用的坐标系及映射方式;   3. 进行图形、图像或文字处理;  4. 释放所使用的DC。  为了进一步简化GDI函数的使用,或者说为了适应面向对象的程序设计风格,微软的MFC类库提供了几个DC的封装类。这些类的继承关系如下: 图1 关于DC的几个MFC类的继承关系   我们知道,绝大部分MFC类都是从CObject类派生的,CDC类也不例外。我们看到,CDC类是最基本的DC封装类;它几乎对应封装了所有的GDI函数。另外,CDC类的各个派生类各有专门的用途:  CClientDC——在窗口的客户区画图的DC;  CMetaFileDC——用于操作Windows元文件的DC;  CPaintDC——响应WM_PAINT消息时画图使用的DC,多见于MFC程序的OnDraw函数中;  CWindowDC——在整个窗口范围(包括框架、工具条等)中画图的DC。  MFC除了对DC进行类封装外,对其它GDI对象也进行了类封装。这些类的继承关系如下:图2 GDI对象的MFC封装类的继承关系  CGdiObject——GDI对象的父类,定义了GDI对象封装类的一些公有函数接口;  CBitmap——位图相关操作的封装类,包括位图的装入或创建等;  CBrush——画刷对象的封装类;  CFont——字体属性及相关操作的封装类;  CPalette——调色板的封装类;  CPen——画笔对象的封装类;  CRgn——区域对象以及区域相关操作的封装类。  通过上述介绍,相信读者对GDI编程有了一定的了解。接下去,我们就来讨论卡拉OK字幕叠加的实现原理。共4页。 1 2 3 4 : 天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。(首月免费)   一. GDI编程基础   字幕叠加,应当是属于图形、图像处理的范畴。在Windows平台上,图形、图像处理的方法当然首选GDI(Graphics Device Interface,图形设备接口)。GDI是什么?GDI其实是一套API函数;它们功能丰富,使用起来简单、灵活。下面,我们首先来介绍一些GDI编程的基础知识。   GDI函数有很多,我们大致可以把它们分成如下几类:  · 设备上下文(Device Context,简称DC)函数,如GetDC、CreateDC、DeleteDC等;  · 画线函数,如LineTo、Polyline、Arc等;  · 填充画图函数,如Ellipse、FillRect、Pie等;  · 画图属性函数,如SetBkColor、SetBkMode、SetTextColor等;  · 文本、字体函数,如TextOut、GetTextExtentPoint32、GetFontData等;  · 位图函数,如SetPixel、BitBlt、StretchBlt等;  · 坐标函数,如DPtoLP、LPtoDP、ScreenToClient、ClientToScreen等;  · 映射函数,如SetMapMode、SetWindowExtEx、SetViewportExtEx等;  · 元文件(MetaFile)函数,如PlayMetaFile、SetWinMetaFileBits等;  · 区域(Region)函数,如FillRgn、FrameRgn、InvertRgn等;  · 路径(Path)函数,如BeginPath、EndPath、StrokeAndFillPath等;  · 裁剪(Clipping)函数,如SelectClipRgn、SelectClipPath等。  上述这些函数可以完成绘制用户界面中的各个部分,包括我们在Windows平台上司空见惯的窗口、菜单、工具条、按钮等。除了完成显示操作功能外,GDI还提供了一些绘图对象,用以渲染显示。这些GDI对象包括:  设备上下文(DC)——具有如显示器或打印机等输出设备的绘图属性信息的数据结构;  画笔(Pen)——用于绘制线条;  画刷(Brush)——用于图案的填充;  字体(Font)——用于确定文本字符的样式;  位图(Bitmap)——用于存储图像;  调色板(Palette)——屏幕上画图时可以使用的一些颜色的集合。  DC在GDI中是一个非常重要的概念。在MSDN上查看各个GDI函数的使用说明,我们会发现大部分GDI函数都有一个HDC类型的参数;HDC就是DC句柄。Windows应用程序进行图形、图像处理的一般操作步骤如下:  1. 取得指定窗口的DC;  2. 确定使用的坐标系及映射方式;   3. 进行图形、图像或文字处理;  4. 释放所使用的DC。  为了进一步简化GDI函数的使用,或者说为了适应面向对象的程序设计风格,微软的MFC类库提供了几个DC的封装类。这些类的继承关系如下: 图1 关于DC的几个MFC类的继承关系   我们知道,绝大部分MFC类都是从CObject类派生的,CDC类也不例外。我们看到,CDC类是最基本的DC封装类;它几乎对应封装了所有的GDI函数。另外,CDC类的各个派生类各有专门的用途:  CClientDC——在窗口的客户区画图的DC;  CMetaFileDC——用于操作Windows元文件的DC;  CPaintDC——响应WM_PAINT消息时画图使用的DC,多见于MFC程序的OnDraw函数中;  CWindowDC——在整个窗口范围(包括框架、工具条等)中画图的DC。  MFC除了对DC进行类封装外,对其它GDI对象也进行了类封装。这些类的继承关系如下:图2 GDI对象的MFC封装类的继承关系  CGdiObject——GDI对象的父类,定义了GDI对象封装类的一些公有函数接口;  CBitmap——位图相关操作的封装类,包括位图的装入或创建等;  CBrush——画刷对象的封装类;  CFont——字体属性及相关操作的封装类;  CPalette——调色板的封装类;  CPen——画笔对象的封装类;  CRgn——区域对象以及区域相关操作的封装类。  通过上述介绍,相信读者对GDI编程有了一定的了解。接下去,我们就来讨论卡拉OK字幕叠加的实现原理。共4页。 1 2 3 4 : 下载本文示例代码


VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加VC实现卡拉OK字幕叠加
阅读(269) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~