把你的E-mail给我,我发给你一个例子
解决方案 »
- 我在窗体里用了自定义的2个控件,一个dll,还有几个纪录集
- 救急!!请问如何把WORD中的几个字符换成相对应的字符值??
- 如何用vb实现拖放操作
- 各位大哥快帮我看看特急谢谢.
- r急急,那里有Crystal Report 和 ActiveReport报表下载???
- 动态域名解析(诸如花生壳之类)如何实现???请高手指导!!!
- 窗体上控件太多,怎样处理?
- 我发现VB开发的OCX有问题!!!快帮我!!!
- 有合肥市的吗?我初学VB香请教写问题,可以更方便我找的,不怕麻烦的,如果可能可以做个朋友
- 100M网络硬盘半年免费试用!
- 请问关于printer打印旋转文本的问题
- 请问怎么写一个拖动PICTURE控件的程序。急!
我也想知道怎么实现90度旋转,给我也发一个例子,谢谢。
我明天中午去邮箱收。你QQ多少啊。我的是10692916
Dim arc As Double '弧度
Dim coutain_pic As Double
Dim x1, y1, x2, y2, x3, y3, x4, y4 As Double
pic2.Picture = pic1.Image
arc = i * pi / 180 '弧度
pic2.ScaleMode = vbPixels '"单位
pic1.ScaleMode = vbPixels '"单位
pic1.Picture = LoadPicture("")
coutain_pic = pic1.Height
pic1.Height = pic1.Width
pic1.Width = coutain_pic
For x1 = 0 To pic1.ScaleWidth
x2 = x1 - pic1.ScaleWidth \ 2
For y1 = 0 To pic1.ScaleHeight
y2 = y1 - pic1.ScaleHeight \ 2
x3 = x2 * Cos(-arc) + y2 * Sin(-arc)
y3 = y2 * Cos(-arc) - x2 * Sin(-arc)
x4 = x3 + pic2.ScaleWidth \ 2
y4 = y3 + pic2.ScaleHeight \ 2
If x4 > 0 And x4 < pic2.ScaleWidth - 1 And y4 > 0 And y4 < pic2.ScaleHeight - 1 Then
SetPixel pic1.hdc, x1, y1, GetPixel(pic2.hdc, x4, y4)
End If
Next y1
Next x1
pic1.ScaleMode = 1 '"单位
pic2.ScaleMode = 1 '"单位
End Function
pic1放要旋转的图片,pic2用来过度,i是要旋转的角度
看看我写的图像处理程序:
http://www.csdn.net/expert/topic/879/879364.xml?temp=.5424616
http://www.csdn.net/expert/topic/900/900205.xml?temp=.222973
顺便提醒,只要实现90度旋转还可以用API函数PlgBlt:
【函数】
PlgBlt【操作系统】
Win9X:No
WinNT:Yes【声明】
PlgBlt Lib "gdi32" Alias "PlgBlt" (ByVal hdcDest As Long, lpPoint As POINTAPI, ByVal hdcSrc As Long, ByVal nXSrc As Long, ByVal nYSrc As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hbmMask As Long, ByVal xMask As Long, ByVal yMask As Long) As Long【说明】 复制一幅位图,同时将其转换成一个平行四边形。利用它可对位图进行旋转处理 【返回值】 Long,非零表示成功,零表示失败。会设置GetLastError 【其它】 如果对源图象应用了旋转或剪切处理,这个函数的执行就会失败。可用GetDeviceCaps判断这个函数是否得到了一个特定设备场景的支持【参数表】
hdcDest -------- Long,图象使用的目标设备场景 lpPoint -------- POINTAPI,POINTAPI结构数组中使用的第一个条目。第一个点对应于一个平行四边形左上角位置;第二个点代表右下角位置;第三个点代表左下角位置;第四个点是在前三个点的基础上导出的 hdcSrc --------- Long,图象的源设备场景 nXSrc,nYSrc ---- Long,源图象左上角的x,y坐标,采用逻辑坐标系统表示 nWidth,nHeight - Long,源图象大小,用逻辑坐标表示 hbmMask -------- Long,一个可选的句柄,指向一个单色掩模。如设定了这个参数,那么只有与掩模值1对应的二进制位才会传输到目的地 xMask,yMask ---- Long,掩模位图欲使用区域左上角的x,y坐标
适用平台
Windows NT
《Swin_API》
--------------------------------------------------------------------
Made by Thirdapple's Studio(http://3rdapple.51.net/)