打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VB PaintPicture(第1篇)

1.函数参数

对象.PaintPicture picture,x1,y1,[width1],[height1],[x2],[y2],[width2],[height2],[opcode]

对象: 可以是 Form,picturebox或printer等

picture :源图片

x1,y1 :对象上的起点坐标

width1,height1 :对象上的宽和高

x2,y2 : 截取源图片的起点坐标

width2,height2: 截取原图片的宽和高

opcode :操作码,这里先不做介绍

这个函数是这样理解的:简单来说就是从源图片截取一部分放到目标对象的规定位置。详细来说就是 在 picture参数指定图片 上 截取 从 (x2,y2)点开始的大小为width2,height2的部分,拉伸放在 对象的 (x1,y1)开始的 大小为width1,height1的地方。

这里x1,y1,width1,height1,x2,y2,width2,height2可正可负(宽向右为正)(高向下为正),可以非常灵活的使用。

2.简单的图片编辑

有两个picturebox 控件,分别为pic1,pic2,现在pic1中加载了图片,我们要将pic1中的图片处理后放入pic2

1.复制

pic2.Clspic2.PaintPicture pic1.Picture, 0, 0, pic1.Width, pic1.Height, 0, 0, pic1.Width, pic1.Height

首先清空pic2,之后用paintpicture函数,从pic1.picture上的(0,0)位置开始,截取pic1.width,pic1.height 大小的图片,拉伸放入 pic2的(0,0)位置开始,大小为pic1.width,pic1.height 的 地方,如图

如果我们代码改成这样

pic2.Clspic2.PaintPicture pic1.Picture, 0, 0, pic2.Width, pic2.Height, 0, 0, pic1.Width, pic1.Height

那就变成了 从pic1.picture上的(0,0)位置开始,截取pic1.width,pic1.height 大小的图片,拉伸放入 pic2的(0,0)位置开始,大小为pic2.width,pic2.height 的 地方,如图

2.放大,缩小

放大1.5倍

pic2.Clspic2.PaintPicture pic1.Picture, 0, 0, pic1.Width * 1.5, pic1.Height * 1.5, 0, 0, pic1.Width, pic1.Height

从pic1.picture上的(0,0)位置开始,截取pic1.width,pic1.height 大小的图片,拉伸放入 pic2的(0,0)位置开始,大小为pic1.width*1.5,pic1.height*1.5 的 地方。

同理,缩小图片1.5倍代码为

pic2.Clspic2.PaintPicture pic1.Picture, 0, 0, pic1.Width / 1.5, pic1.Height / 1.5, 0, 0, pic1.Width, pic1.Height

3.左右翻转,上下翻转

左右翻转代码

pic2.Clspic2.PaintPicture pic1.Picture, pic1.ScaleWidth, 0, -pic1.ScaleWidth, pic1.ScaleHeight, 0, 0, pic1.Width, pic1.Height

这里可以看到负的参数。 我们把pic1的图片从左上角往右下方拎起来,在放入pic2时却从右上角开始,往左下角放。这样就实现了图片的左右翻转。上下翻转同理。代码如下

pic2.Clspic2.PaintPicture pic1.Picture, 0, pic1.ScaleHeight, pic1.ScaleWidth, -pic1.ScaleHeight, 0, 0, pic1.Width, pic1.Height

4.反转(反色)

这里涉及到一个opcode参数,博主还没详细学习。。只给出代码和图

pic2.Clspic2.PaintPicture pic1.Picture, 0, 0, , , , , , , vbNotSrcCopy

会变得好可怕。。

5.保存

SavePicture pic2.Image, "F:\桌面\1.jpg"

结束

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
PaintPicture
vb制作的屏保系统,由多张图片循环播放,如何在图片播放时加上一定的特效,比如百叶窗等等,就像PPT制作的
H.264视频编码在VC++.Net中的实现
外文书上的毛衣图片
excel批量导入图片的方法和例子
VB图形和绘图操作
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服