资源描述:
《vb代码vb小程序将彩色图像转变为黑白图像》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VB代码VB小程序:将彩色图像转变为黑白图像 本程序使用两种方法将一幅彩色图像转变为黑白图像:用API方法、用VB控件方法。通过比较两种方法不难发现: 用VB控件进行转换,过程直观,代码好理解,对学习和理解VB绘图语句很有帮助,但速度慢。 用API方法进行转换,需操作二进制数组,像素点的行列定位较复杂,但转换速度快,几乎是瞬间就完成了转换。''以下是窗体代码,在VB6调试通过'需在窗体放置5个控件:Command1、Command2、Command3、Picture1、Text1'本人原创
2、,转载请注明文章来源:http://hi.baidu.com/100bd/blog/item/1f4653397c5d693296ddd800.htmlDimctExitAsBooleanPrivateTypeBitMap bmTypeAsLong '图像类型:0表示是位图 bmWidthAsLong '图像宽度(像素) bmHeightAsLong '图像高度(像素) bmWidthBytesAsLong '每一行图像的字节数
3、bmPlanesAsInteger '图像的图层数 bmBitsPixelAsInteger'图像的位数 bmBitsAsLong '位图的内存指针EndTypePrivateDeclareFunctionGetObjectLib"gdi32"Alias"GetObjectA"(ByValhObjectAsLong,ByValnCountAsLong,lpObjectAsAny)AsLongPrivateDeclareFunc
4、tionGetBitmapBitsLib"gdi32"(ByValhBitmapAsLong,ByValdwCountAsLong,lpBitsAsAny)AsLongPrivateDeclareFunctionSetBitmapBitsLib"gdi32"(ByValhBitmapAsLong,ByValdwCountAsLong,lpBitsAsAny)AsLongPrivateSubForm_Load() Me.Caption="转变为
5、黑白图片" Text1.Text=App.Path&"Tu1.jpg" Command1.Caption="打开":Command1.ToolTipText="打开指定的图片文件" Command2.Caption="转换1":Command2.ToolTipText="用API方法转变为黑白图片" Command3.Caption="转换2"
6、;:Command3.ToolTipText="用VB控件方法转换为黑白图像" Picture1.AutoSize=True:Picture1.AutoRedraw=True Picture1.ScaleMode=3 Picture1.ToolTipText="如果已转换为黑白图像,双击恢复为原来的图像" '设置控件位置,实际可以在设计窗体时完成 DimW1AsLong W1=Me.TextWidth("A"
7、;) Command2.MoveW1,W1,W1*6,W1*3 Command3.MoveW1*8,W1,W1*7,W1*3 Command1.MoveW1*15,W1,W1*7,W1*3 Text1.MoveW1*22,W1,W1*80,W1*3 Picture1.MoveW1,W1*5,W1*40,W1*40 CallRndImg(Picture1)'随机画一些图像EndSubPrivateSubRndImg(KjAsObject) '随机画一些图像 D
8、imIAsLong Randomize Kj.DrawWidth=3 ForI=1To100 Kj.Line(Kj.ScaleWidth*Rnd,Kj.ScaleHeight*Rnd)-Step(50,50),&HFFFFFF*Rnd,BF Kj.Circle(Kj.ScaleWidth*Rnd,Kj.ScaleHeight*Rnd),30*Rnd,&HFFFFFF*Rnd Next Kj.DrawWidth=1 Kj.Font.Siz