Public Shared Function MergedImage(ByVal innerImgPath As String, ByVal outerImgPath As String, ByVal mergImgPath As String) As Boolean
Try
Dim fi As System.IO.FileInfo = New System.IO.FileInfo(mergImgPath)
If fi.Directory.Exists = False Then
fi.Directory.Create()
End If
Dim innerImg As Image = Image.FromFile(innerImgPath)
Dim outerImg As Image = Image.FromFile(outerImgPath)
Dim b As New Bitmap(outerImg.Width, outerImg.Height, PixelFormat.Format16bppRgb555)
Dim g As Graphics = Graphics.FromImage(b)
g.Clear(Color.White)
Dim p1(2) As Point
Dim p2(2) As Point
If outerImg.Width >= innerImg.Width Then
If outerImg.Height >= innerImg.Height Then
p1(0) = New Point((outerImg.Width - innerImg.Width) \ 2, (outerImg.Height - innerImg.Height) \ 2)
p1(1) = New Point((outerImg.Width + innerImg.Width) \ 2, (outerImg.Height - innerImg.Height) \ 2)
p1(2) = New Point((outerImg.Width - innerImg.Width) \ 2, (outerImg.Height + innerImg.Height) \ 2)
Else
p1(0) = New Point((outerImg.Width - innerImg.Width) \ 2, 0)
p1(1) = New Point((outerImg.Width + innerImg.Width) \ 2, 0)
p1(2) = New Point((outerImg.Width - innerImg.Width) \ 2, outerImg.Height)
End If
Else
If outerImg.Height >= innerImg.Height Then
p1(0) = New Point(0, (outerImg.Height - innerImg.Height) \ 2)
p1(1) = New Point(outerImg.Width, (outerImg.Height - innerImg.Height) \ 2)
p1(2) = New Point(0, (outerImg.Height + innerImg.Height) \ 2)
Else
p1(0) = New Point(0, 0)
p1(1) = New Point(outerImg.Width, 0)
p1(2) = New Point(0, outerImg.Height)
End If
End If
p2(0) = New Point(0, 0)
p2(1) = New Point(outerImg.Width, 0)
p2(2) = New Point(0, outerImg.Height)
'测试代码
'Dim innerImgPath As String = "c:\Winter.jpg"
'Dim outerImgPath As String = "c:\17.gif"
'Dim savePath As String = "C:\merg.jpg"
'If ImgMerg.MergedImage(innerImgPath, outerImgPath, savePath) = True Then
' Dim bMerg As New System.drawing.Bitmap(savePath)
'Else
' MsgBox("错误")
'End If
End Function
Public Shared Function MergedImage(ByVal innerImgPath As String, ByVal outerImgPath As String, ByVal mergImgPath As String) As Boolean
Try
Dim innerImg As Image = Image.FromFile(innerImgPath)
Dim outerImg As Image = Image.FromFile(outerImgPath)
Dim b As New Bitmap(outerImg.Width, outerImg.Height, PixelFormat.Format16bppRgb555)
Dim g As Graphics = Graphics.FromImage(b)
g.Clear(Color.White)
Dim p1(2) As Point
Dim p2(2) As Point
If outerImg.Width >= innerImg.Width Then
If outerImg.Height >= innerImg.Height Then
p1(0) = New Point((outerImg.Width - innerImg.Width) \ 2, (outerImg.Height - innerImg.Height) \ 2)
p1(1) = New Point((outerImg.Width + innerImg.Width) \ 2, (outerImg.Height - innerImg.Height) \ 2)
p1(2) = New Point((outerImg.Width - innerImg.Width) \ 2, (outerImg.Height + innerImg.Height) \ 2)
Else
p1(0) = New Point((outerImg.Width - innerImg.Width) \ 2, 0)
p1(1) = New Point((outerImg.Width + innerImg.Width) \ 2, 0)
p1(2) = New Point((outerImg.Width - innerImg.Width) \ 2, outerImg.Height)
End If
Else
If outerImg.Height >= innerImg.Height Then
p1(0) = New Point(0, (outerImg.Height - innerImg.Height) \ 2)
p1(1) = New Point(outerImg.Width, (outerImg.Height - innerImg.Height) \ 2)
p1(2) = New Point(0, (outerImg.Height + innerImg.Height) \ 2)
Else
p1(0) = New Point(0, 0)
p1(1) = New Point(outerImg.Width, 0)
p1(2) = New Point(0, outerImg.Height)
End If
End If
p2(0) = New Point(0, 0)
p2(1) = New Point(outerImg.Width, 0)
p2(2) = New Point(0, outerImg.Height)
'测试代码
'Dim innerImgPath As String = "c:\Winter.jpg"
'Dim outerImgPath As String = "c:\17.gif"
'Dim savePath As String = "C:\merg.jpg"
'If ImgMerg.MergedImage(innerImgPath, outerImgPath, savePath) = True Then
' Dim bMerg As New System.drawing.Bitmap(savePath)
'Else
' MsgBox("错误")
'End If
End Function