`
wanguangru
  • 浏览: 19582 次
  • 性别: Icon_minigender_2
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

实例16 图像的特效显示

 
阅读更多

实例16 图像的特效显示 2009年10月13日  第2章 图形图像处理实例   实例16 图像的显示   在Windows处理图像的API函数中,Bitblt()函数是非常重要而且是常用的函数之一。运用这个函数,可以实现图像的旋转和动态显示等效果。如果想在图像处理上有所突破,也必须熟练掌握Bitblt()函数。本实例实现的功能是以门帘效果来显示一幅BMP图像   向窗体上添加一个TImage、一个OpenPictureDialog、一个TPaintBox和一个TButton,TImage充当原图片显示的载体,TPaintBox用来显示图像的。添加后的窗体如图所示。          在显示图像的过程中,如果把原始图像分成几个部分,对每一个部分都逐步放大其显示范围以接近各部分图像的宽度,那么运行时可实现门帘式的显示效果。改变循环语句的步长或者改变Sleep()函数中的参数就可以改变程序运行的时间。   门帘效果的实现代码如下:   unit Unit1;   interface   uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls, ExtCtrls, ExtDlgs;   type   TForm1 = class(TForm)   Image1: TImage;   btnOpen: TButton;   Image2: TImage;   OpenPictureDialog1: TOpenPictureDialog;   PaintBox1: TPaintBox;   procedure btnOpenClick(Sender: TObject);   procedure FormCreate(Sender: TObject);   private   { Private declarations }   public   { Public declarations }   end;   var   Form1: TForm1;   implementation   {$R *.dfm}   procedure TForm1.btnOpenClick(Sender: TObject);   var   i,j:Integer;   hDC1:HDC;   hDC2:HDC;   begin   if(self.OpenPictureDialog1.Execute()) then   begin   Image1.Picture.Bitmap.LoadFromFile(OpenPictureDialog1.FileName);   Image1.Visible:=true;   hDC1:=Image1.Canvas.Handle;   hDC2:=PaintBox1.Canvas.Handle;   for i:=0 to (Image1.Width div 10) do   begin   for j:=0 to 10 do   begin   BitBlt(hDC2,j*Image1.Width div 10,0,i+2,Image1.Height,   hDC1,j*Image1.Width div 10,0,SRCCOPY);   Sleep(10);   end;   end;   end;   end;   procedure TForm1.FormCreate(Sender: TObject);   begin   self.OpenPictureDialog1.Filter := 'BMP files (*.bmp)|*.bmp';   end;   end.   保存文件,然后按F9键运行程序。在程序运行的初始画面上单击“打开”按钮,弹出一个提示用户选择图像文件的“打开”对话框。确认选择后,在窗体的TPaintBox上就会显示图像的门帘效果,过程中间的显示如图所示          在BitBlt()函数的参数中,特别值得一提的是参数dwRop,它提供了源图与目标图的15种组合方式。但是一般都采用SRCCOPY,即把源图复制给目标图。读者如果可以灵活运用这个参数,就可以制作出更加丰富多彩的图像 评论
正在加载评论......
分享到:
评论

相关推荐

    jquery 图片放大 实例 jquery特效

    jquery 图片放大 实例 jquery特效jquery 图片放大 实例 jquery特效jquery 图片放大 实例 jquery特效jquery 图片放大 实例 jquery特效jquery 图片放大 实例 jquery特效jquery 图片放大 实例 jquery特效

    导航特效,图片显示特效

    导航特效,图片显示特效 导航特效,图片显示特效 导航特效,图片显示特效 多个实例

    javascript网页特效实例大全(8-12)

    实例235 雷达扫描图片特效 363 实例236 在页面中旋转的图片 365 实例237 改变形状的图片 366 实例238 图片在页面浮动 367 实例239 随机变化的网页背景 369 8.5 选择头像 370 实例240 在列表中选择图片...

    javascript网页特效实例大全(13-19)

    实例347 图片的水波纹特效 547 实例348 图片的灰度效果 548 实例349 图片的动态说明文字 549 第14章 JavaScript与XML 553 14.1 读取XML文件 554 实例350 使用XML DOM对象读取XML文件 554 实例351 使用...

    使用DIB实现图像的特效显示

    DIB实现图像的特效显示非常好的实例,使用CDib类实现了图像的扫描特效、移动特效、马赛克、百页窗、栅格交错、伸缩特效;

    WPF火焰图像特效——效果实例

    WPF火焰图像特效——效果实例,适合初学都学习

    JavaScript精彩网页特效实例精粹

    Ajax与XMLHttpRequest JavaScript连接数据库实例 按钮特效类 菜单特效类 计数转换类 流行特效类 ...日期时间类 鼠标键盘类 图片特效类 文本特效类 系统检测类 页面特效类 游戏类 在线测试类 综合类

    50种图片轮换动画特效实例欣赏与ppt源文件下载.rar

    三个圆形遮罩图片显示效果,拉幕式图片展示,遮罩图片由模糊到清晰展示效果,局部图片增亮展示效果,扇形局部展示图片效果,路线图标示效果,图文框动画效果,50种图片轮换动画特效实例欣赏与ppt源文件下载。

    用C++Builder实现图像的多种特效显示

    通过分析一些图像的显示效果,详细介绍了如何用C++Builder实现图像的多种特效显示,并给出了相应的综合实例。

    JavaScript精彩网页特效实例精粹(JavaScript常用代码)

    图片特效类 第三章.鼠标键盘类 第四章.按钮特效类 第五章.日期时间类 第六章.计数转换类 第七章.系统检测类 第八章.页面特效类 第九章.菜单特效类 第十章.密码校验类 第十一章.在线测试类 第十二章.游戏类 第十三章....

    JavaScript网页特效范例宝典源码

    实例235 雷达扫描图片特效 363 实例236 在页面中旋转的图片 365 实例237 改变形状的图片 366 实例238 图片在页面浮动 367 实例239 随机变化的网页背景 369 8.5 选择头像 370 实例240 在列表中选择图片 370 实例241 ...

    jQuery图片动画特效实例

    jQuery图片动画特效实例

    VC程序开发实例程序之图形技术(2)

    实例096 显示JPG图片 175 3.5 图形转换与缩放 177 实例097 将位图转换为JPG 177 实例098 将位图转为GIF图标 178 实例099 图片的平滑缩放 179 3.6 图像的剪切与合成 181 实例100 图像的剪切 181 实例...

    javascript实例应用---图片特效类.rar

    javascript实例应用---图片特效类.rarjavascript实例应用---图片特效类.rarjavascript实例应用---图片特效类.rarjavascript实例应用---图片特效类.rar

    jquery特效实例打包

    100个jquery特效实例 图片特效 jquery插件 打包下载

    一些HTML5网页特效实例集.rar

    收集的一些HTML5网页特效实例集,包括有canvas、网页拖动特效、图像特效、播放器特效等,还有一些HTML5网页动画制作实例,这些简单的实例,有助于新手更好的了解HTML5的相关特性和方法。

Global site tag (gtag.js) - Google Analytics