Я пытаюсь получить информацию о файле PNG, но мне еще предстоит найти всеобъемлющий сайт, чтобы помочь мне.
Вот некоторые из полу полезных фрагментов кода, которые у меня есть:
Bitmap bmp = new Bitmap(pngFileName);
BitmapData bd = bmp.LockBits(new Rectangle(0, 0, bmp.Width, bmp.Height), ImageLockMode.ReadOnly,PixelFormat.Format48bppRgb);
и
Stream imageStreamSource = new FileStream(pngFileName, FileMode.Open, FileAccess.Read, FileShare.Read);
var decoder = new PngBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapSource bitmapSource = decoder.Frames[0];
С их помощью я смог получить высоту и ширину изображения. Однако мне все еще нужно найти следующую информацию:
- Кодируется ли RLE?
- Это в родном видеоформате?
- Это вращается?
- Использует ли он палитру градаций серого?
- Есть ли у него прозрачность?
- Это RGB или BGR?
Я бы очень признателен за некоторые советы о том, как это сделать, или за ссылки на хорошие статьи, посвященные этому. Мы работаем с .NET 4.0