千家信息网

VB.NET如何实现相框效果

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,小编给大家分享一下VB.NET如何实现相框效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!VB.NET相框效果实现代码示
千家信息网最后更新 2025年02月02日VB.NET如何实现相框效果

小编给大家分享一下VB.NET如何实现相框效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

VB.NET相框效果实现代码示例:

  1. Imports System.Drawing

  2. Imports System.Drawing.Imaging

  3. Imports System.Drawing.Drawing2D

  4. Public Class ImgMerg

  5. Public Shared Function MergedImage
    (ByVal innerImgPath As String,
    ByVal outerImgPath As String,
    ByVal mergImgPath As String)
    As Boolean

  6. Try

  7. Dim fi As System.IO.FileInfo =
    New System.IO.FileInfo(mergImgPath)

  8. If fi.Directory.Exists = False Then

  9. fi.Directory.Create()

  10. End If

  1. Dim innerImg As ImageImage = Image.
    FromFile(innerImgPath)

  2. Dim outerImg As ImageImage = Image.
    FromFile(outerImgPath)

  3. Dim b As New Bitmap(outerImg.Width,
    outerImg.Height, PixelFormat.
    Format16bppRgb555)

  4. Dim g As GraphicsGraphics =
    Graphics.FromImage(b)

  5. g.Clear(Color.White)

  6. Dim p1(2) As Point

  7. Dim p2(2) As Point

  8. If outerImg.Width >= innerImg.Width Then

  9. If outerImg.Height >= innerImg.Height Then

  10. p1(0) = New Point((outerImg.Width -
    innerImg.Width) \ 2, (outerImg.Height -
    innerImg.Height) \ 2)

  11. p1(1) = New Point((outerImg.Width +
    innerImg.Width) \ 2, (outerImg.
    Height - innerImg.Height) \ 2)

  12. p1(2) = New Point((outerImg.Width -
    innerImg.Width) \ 2, (outerImg.Height +
    innerImg.Height) \ 2)

  13. Else

  14. p1(0) = New Point((outerImg.Width -
    innerImg.Width) \ 2, 0)

  15. p1(1) = New Point((outerImg.Width +
    innerImg.Width) \ 2, 0)

  16. p1(2) = New Point((outerImg.Width -
    innerImg.Width) \ 2, outerImg.Height)

  17. End If

  18. Else

  19. If outerImg.Height >= innerImg.Height Then

  20. p1(0) = New Point(0, (outerImg.Height
    - innerImg.Height) \ 2)

  21. p1(1) = New Point(outerImg.Width,
    (outerImg.Height - innerImg.Height) \ 2)

  22. p1(2) = New Point(0, (outerImg.Height
    + innerImg.Height) \ 2)

  23. Else

  24. p1(0) = New Point(0, 0)

  25. p1(1) = New Point(outerImg.Width, 0)

  26. p1(2) = New Point(0, outerImg.Height)

  27. End If

  28. End If

  1. p2(0) = New Point(0, 0)

  2. p2(1) = New Point
    (outerImg.Width, 0)

  3. p2(2) = New Point
    (0, outerImg.Height)

  4. g.DrawImage(innerImg, p1)

  5. g.DrawImage(outerImg, p2)

  6. b.Save(mergImgPath)

  7. outerImg.Dispose()

  8. innerImg.Dispose()

  9. Return True

  10. Catch ex As Exception

  11. Return False

  12. End Try

测试VB.NET相框效果代码

  1. 'Dim innerImgPath As String =
    "c:\Winter.jpg"

  2. 'Dim outerImgPath As String =
    "c:\17.gif"

  3. 'Dim savePath As String =
    "C:\merg.jpg"

  4. 'If ImgMerg.MergedImage
    (innerImgPath, outerImgPath,
    savePath) = True Then

  5. ' Dim bMerg As New System.
    drawing.Bitmap(savePath)

  6. 'Else

  7. ' MsgBox("错误")

  8. 'End If

  9. End Function

  10. End Class

以上是"VB.NET如何实现相框效果"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0