0
我正在使用下面的代码来缩小图像的大小。它工作正常。我的问题是,一张3MB的图片会缩小到470〜KB。有没有办法进一步缩小文件大小?我玩过关于插值模式,平滑模式和其他设置的所有可能的设置,但最终的图像仍然在400 kb左右。这些图像用于报纸网站,因此也应该保持其品质。使用ASP.NET缩小图像大小(更多)
编辑 我的图像尺寸为4000 X 3000像素,我宽缩减至650像素。
Dim image_p As Image = _
ResizeImage(img, Convert.ToInt32(pWidth), Convert.ToInt32(pHeight))
Private Function ResizeImage(_
original_img As Bitmap, width As Integer, height As Integer) As Bitmap
Dim callback As New Image.GetThumbnailImageAbort(AddressOf GetThumbAbort)
Dim new_img As New Bitmap(original_img, width, height) 'new blank bitmap'
Dim g As Graphics = Graphics.FromImage(new_img)
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighSpeed
g.CompositingQuality = _
System.Drawing.Drawing2D.CompositingQuality.HighSpeed
g.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceOver
g.DrawImage(original_img, 0, 0, width, height)
Return new_img
End Function
什么“这些图像用于报纸网站,因此应该保持其品质”呢?保留什么? – Will 2013-02-17 08:51:22
你使用什么文件格式?你有一个示例图像?什么是完整的尺寸和颜色深度? 650X?X? – Will 2013-02-17 08:53:23
@意志图像格式是jpg。关于我的看法;我承受不起低质量的压缩,因为这些图像将在网站的首页上使用。(当我说这些时,上传到网站的所有照片大约是3MB,我将它们缩小到650 x 300(使用裁剪) – 2013-02-17 09:04:03