GDIPlus绘制桌面歌词



功能介绍

採用GDIPlus绘制桌面歌词,相似酷狗、QQ音乐等软件。
歌词支持纯色、两色渐变、三色渐变;支持高亮歌词。

实现方法

窗体部分:桌面歌词是个独立的背景透明窗体。能够移动位置,能够鼠标穿透.透明採用WS_EX_LAYERED、UpdateLayeredWindow。鼠标穿透能够增加WS_EX_TRANSPARENT样式。
歌词部分:用Graphics::MeasureString取出文字的宽度/高度。把文字增加GDIPlus的路径(GraphicsPath),然后绘制边框(Graphics::DrawPath)、採用线性渐变画刷(LinearGradientBrush)填充渐变路径(Graphics::FillPath)。
高亮部分:依据当前的进度百分比,计算出高亮部分的宽度,通过Graphics::SetClip设置剪辑区域,再绘制高亮颜色。


开发环境

VC版源代码:Visual Studio 2005/MFC/GDIPlus
易语言版:易语言5.11。全API实现,不依赖第三方支持库


源代码下载

CSDN下载: http://download.csdn.net/detail/cometnet/7603185
百度网盘: http://pan.baidu.com/s/1sj4S1hN
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GDI+是Windows操作系统中的一个图形应用程序接口,可以用于开发2D图形应用程序。使用GDI+绘制图片需要先将图片载入内存,然后再通过GDI+的方法进行绘制。这里介绍一下使用C++代码绘制图片的基本流程。 首先,需要在程序中引用GDI+的头文件和库,然后使用GDI+提供的Image类来读取图片,例如: Image* img = Image::FromFile(L"picture.png"); 这里创建了一个Image对象,并将图片文件“picture.png”从文件中读取到内存中。 然后,可以通过Graphics类的DrawImage方法将图片绘制到指定的位置上,例如: Graphics graphics(hdc); graphics.DrawImage(img, 0, 0); 这里创建了一个Graphics对象,并将Image对象img绘制到坐标(0,0)的位置上。 如果需要对图片进行一些变换,比如旋转、缩放等,可以使用ImageAttributes类和Matrix类来实现。例如,下面的代码将图片旋转了45度: ImageAttributes imageAttr; Matrix matrix; matrix.Rotate(45); imageAttr.SetColorMatrix(&matrix); graphics.DrawImage(img, 0, 0, img->GetWidth(), img->GetHeight(), 0, 0, img->GetWidth(), img->GetHeight(), UnitPixel, &imageAttr); 这里创建了一个ImageAttributes对象,并使用Matrix类将图片旋转了45度,然后通过Graphics的DrawImage方法将旋转后的图片绘制到指定位置上。 综上,使用GDI+绘制图片的基本流程是:载入图片、创建Graphics对象、使用Graphics对象的DrawImage方法将图片绘制到指定位置上。如果需要对图片进行变换,可以使用ImageAttributes类和Matrix类来实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值