VB6-图像分割利器 Microsoft Picture Clip控件

在医院做图像处理时碰到双面扫描仪,需要将扫描到的2张图像分割为一张并打印。在分割图像的过程中总是不得法,后来虽然有CBM666的指导,但给的方法也还是不太方便。无意中在翻一本vb书的时候看到了一个使用Microsoft Picture Clip控件的例子,想要分割图像那是超级简单。分享以下代码,保证拿了就可以用。

 

'引用Microsoft Picture Clip控件,放置它名称为Pic1
'将009.jpg纵向一分为2,保存到本地Tmp1 Tmp2
Pic1.Picture = LoadPicture(App.Path + "\009.jpg")
Pic1.Cols = 2
Pic1.Rows = 1

Picture1(0).Picture = Pic1.GraphicCell(0)
Picture1(1).Picture = Pic1.GraphicCell(1)

'这种办法保存的图片是位图,会很大的。
SavePicture Picture1(0).Picture, App.Path + "\Tmp1.jpg"
SavePicture Picture1(1).Picture, App.Path + "\Tmp2.jpg"


'可以采用以下Picbuf控件进行图像压缩保存,需要注册IK32.OCX控件
'也可以先不保存,将图片赋给Picturebox。
picA.Picture = Pic1.GraphicCell(0)
picB.Picture = Pic1.GraphicCell(1)

Call SavePic(picA, "Tmp1")
Call SavePic(picB, "Tmp2")

Private Sub SavePic(ByVal Control As Picbuf, ByVal filename As String)

    Control.ImageFormat = IK_JPEG
    Control.WriteCompression = 85
    Control.filename = App.Path + "\" + filename + ".jpg"
    Control.Store

End Sub

附CBM666分割大图片的方法,但是没有以上用控件灵活便捷:

 

posted @ 2014-07-28 22:45  不平凡总在于坚持!  阅读(1701)  评论(0编辑  收藏  举报