我正在尝试使用C#裁剪图像,但我遇到了一些问题。
我使用过这段代码:
Bitmap myBitmap = new Bitmap(outputFileName);
Rectangle destRectangle = new Rectangle(new Point(0, 15), new Size(myBitmap.Width, myBitmap.Height));
Bitmap bmp = new Bitmap(myBitmap.Width, myBitmap.Height);
Graphics g = Graphics.FromImage(bmp);
g.DrawImage(myBitmap, 0, 0, destRectangle, GraphicsUnit.Pixel);
bmp.Save(outputFileNameCut, ImageFormat.Jpeg);
outputFileName是第一个图像的路径,outputFileNameCut是新图像的路径。它工作正常但是当我保存图像时,保存的图像是这样的:
似乎质量也越来越差。这两个图像都是.jpg
谢谢
答案 0 :(得分:2)
请改用此代码:
Bitmap myBitmap = new Bitmap(outputFileName);
Rectangle destRectangle = new Rectangle(new Point(0, 15),
new Size(myBitmap.Width, myBitmap.Height));
Bitmap bmp = new Bitmap(myBitmap.Width, myBitmap.Height - 15);
Graphics g = Graphics.FromImage(bmp);
g.DrawImage(myBitmap, 0, 0, destRectangle, GraphicsUnit.Pixel);
bmp.Save(outputFileNameCut, ImageFormat.Jpeg);
在旁注中,这可能会使条形码无效。因为您正在修改和调整图像大小,这可能会在某种程度上干扰某些扫描仪。