0
我使用的代码需要一个位图并将其转换为24位BPP,以便我可以在专门需要该文件格式的程序中使用它。下面是代码:Can Graphics.DrawImage是否无意裁剪图像?
using (Bitmap tempImage = new Bitmap(pageToScan.FullPath))
{
if (tempImage.PixelFormat != System.Drawing.Imaging.PixelFormat.Format24bppRgb)
{
using (Bitmap tempImage2 = new Bitmap(tempImage.Size.Width, tempImage.Size.Height,
System.Drawing.Imaging.PixelFormat.Format24bppRgb))
{
using (Graphics g = Graphics.FromImage(tempImage2))
{
g.DrawImage(tempImage, new Point(0, 0));
}
RecognizeBitmap(pageToScan, tempImage2); //Thanks to Tim on this refactoring.
}
}
else
RecognizeBitmap(pageToScan, tempImage);
}
我对上面的代码中的两个问题:
- 与特定的形象,我觉得 这刮到了最右边的200个 像素马上tempImage2的。 这可能吗? 怎么可能发生,我该如何阻止它?我的一位朋友 建议它 可能与正在使用的TIFF文件的步幅 有关。
- 是否有 更快地将图像转换为24 BPP在内存的方式?
很酷。我应该在tempImage.Clone周围使用吗? – Chris 2009-01-19 15:56:27