【发布时间】:2015-11-06 19:33:01
【问题描述】:
我正在制作一个用于从多个图像合成图像的系统。假设我有两张图片,我想合成一张这样的图片:
粗边框定义了我想要的完整图像。它是一个分辨率为600X540 的 div,在其中有两个 div,每个 div 都包含一个不同的图像,我可以随意定位。在定位结束时,我得到了每张图片的左上边框(对应整个div)。
我无法在后面的代码中创建图像。我正在使用Bitmap.DrawImage 方法。这是我的代码:
oImgOut = New System.Drawing.Bitmap(600, 540)
oGraph = System.Drawing.Graphics.FromImage(oImgOut)
oGraph.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic
oGraph.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality
oGraph.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality
oGraph.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality
oGraph.FillRectangle(Drawing.Brushes.White, 0, 0, 600, 540)
//image 1
oGraph.DrawImage(oImg1, CInt(left1), CInt(top1), CInt(width1), CInt(height1))
oImg1.Dispose()
//image2
oGraph.DrawImage(oImg2, CInt(left2), CInt(top2), CInt(width2), CInt(height2))
oImg2.Dispose()
oImgOut.Save(strDirectory)
oImgOut.Dispose()
这是我目前得到的:
我试着给每张图片一个 300px 的宽度和 540px 的高度,但是你看到右边的图片看起来很丑:
我想知道是否有办法裁剪图像?我查看了大部分 DrawImage 原型,但我找不到任何可以完成我想要的工作。你肯定比我更清楚。
谁能帮帮我?
【问题讨论】:
标签: asp.net vb.net image drawimage