在vb中如何用API函数旋转图片?

一个image读入一张图像,如何在这个image中实现图90度,180度和270度的旋转?... 一个image读入一张图像,如何在这个image中实现图90度,180度和270度的旋转? 展开
 我来答
匿名用户
2013-08-04
展开全部
没听说过在image中旋转图片的(它连个hdc都没有),一般都是在picturebox里。具体的api可以用PlgBlt,它是专门实现图像旋转的,不过就是会出现锯齿,但是对你要求的90度,180度和270度就不会出现锯齿。这是我写的旋转函数:Function MyRotation(ByVal DesHdc As Long, ByVal SrcHdc As Long, ByVal DesX As Long, ByVal DesY As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal Angle As Single) As Long
Dim PI As Double
PI = 3.1415926
Dim lpPoint(1 To 3) As POINTAPI
Dim Rad As Double
Rad = Angle * PI / 180
lpPoint(3).x = DesX
lpPoint(3).y = DesX
lpPoint(1).x = lpPoint(3).x + nHeight * Sin(Rad)
lpPoint(1).y = lpPoint(3).y - nHeight * Cos(Rad)
lpPoint(2).x = lpPoint(1).x + nWidth * Cos(Rad)
lpPoint(2).y = lpPoint(1).y + nWidth * Sin(Rad)
PlgBlt DesHdc, lpPoint(1), SrcHdc, 0, 0, nWidth, nHeight, 0, 0, 0
End Function
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-04
展开全部
picturebox就可以,用PLGBIT函数,,,程序如上,回答正确调用方式:MyRotation(目标HDC,源HDC,目标宽度,目标高度,源宽度,源高度,旋转的角度)============================================================================鉴定完毕!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式