Я использую код, который принимает растровое изображение и преобразует его в 24 BPP, чтобы я мог использовать его в программе, которая специально требует этот формат файла. Вот код:
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
БПП в памяти?