扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:Builder 2007年7月31日
关键字: Office
第二步:添加光晕效果
现在,我们在创建的文本图片里循环,一个像素接一个像素。我们会(通过检查阿尔法通道)确认每个像素是否有任何颜色。如果有颜色,我们就知道这是文本或者光晕,所以可以接着确认下一个像素了:
If BitmapText.GetPixel(IntegerXCounter, IntegerYCounter).A > 0 ThenContinueForEndIf而另一方面,如果像素是空的,我们就需要弄清楚这个像素旁边是否紧接着有任何文本。如果有,就用光晕的颜色给它增加阴影。我们利用列表B里代码的八种不同版本来确认所有的像素。
ContinueFor之所有存在是因为一旦我们给像素加上了阴影,那么就没有理由再浪费时间继续检查它周围的像素了。我们使用IntegerXToCheck和IntegerYToCheck这两个临时变量来减少需要进行的计算量。根据方向不同,我们会翻转这两个变量“检查”的“方向”。列表C里是完整的循环。
第三步:把文本放到图片上
困难的部分已经完成了!把新的图片覆盖到原始图片上就相当然容易了:
GraphicsBitmapEditor.DrawImage(BitmapText, TextX, TextY)这样,我们就有了一个标准的、具有更广泛用途的.NET Bitmap对象了。例如,我们可以把这个图片保存到磁盘上,把它显示在Web客户端上,或者把它放到一个PictureBox里。它的用途是无限可能的。
让文本光晕开始工作
要让文本光晕起作用,我们就要把它们放到一个自己的类里。这个下载里带有一个完整的类,能够为你生成文本光晕,只要你提供文本、原始图片、光晕颜色,以及文本的字体就行了。它还是一个使用文本光晕和把它们加到图片上的有用应用程序。
这个应用程序带有并能够安装完整的源代码(要编译它需要.NET Framework 2.0 SDK,建议最好用Visual Studio 2005来处理源代码),这样你就能够试验并根据自己的要求修改代码了。
这个应用程序还用到了基本的Windows对话框组件,并能够利用BackgroundWorker对象来处理图片,而不需要暂停其他的应用程序。结论是,这个应用程序演示了利用VB.NET代码创建一个位图并用用户选择的(边界)颜色填充它的简单技术。
责任编辑:张琎
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。