使用.NET无损失地裁剪图像

时间:2010-03-31 02:56:59

标签: .net image crop

我试图理解为什么在.NET中裁剪图像后,我最终得到的图像大小是原始图像的3倍。 下面列出的是我用于裁剪图像的代码

  Private Shared Function CropImage(ByVal img As Image, ByVal cropArea As Rectangle) As Image
      Dim bmpImage As Bitmap = New Bitmap(img)
      Dim bmpCrop As Bitmap = bmpImage.Clone(cropArea, img.PixelFormat)
      Return CType(bmpCrop, Image)
   End Function

其中img是从文件加载到图像对象中的原始图像。

如何减少我的图像裁剪损失?

1 个答案:

答案 0 :(得分:1)

看看这个问题的第二个答案:

High Quality Image Scaling Library

该代码应该有所帮助。问题是.NET图像处理库默认System.Drawing.Imaging.Encoder.Quality设置为100%,实际上是90%的三倍,质量没有明显差异。使用该问题中的代码以较低的质量设置保存图像,您应该会发现文件大小存在很大差异。