System.Drawing.Image: Когда происходит сжатие данных для сжатых изображений?
Я не помечал этот вопрос как TIFF, потому что представляю, что.NET будет относиться к поведению одинаково для разных типов изображений, которые также могут иметь сжатие.
Я работаю на сервере, который манипулирует некоторыми изображениями TIFF. Это делается с помощью Bitmap.LockBits и небезопасных манипуляций с указателями. Эти изображения сжимаются в формате TIFF G4, который.NET обрабатывает за кулисами.
При использовании Bitmap.LockBits данные пикселей, которые затем становятся доступными через указатели, имеют несжатый формат.
У меня вопрос, когда эти данные распаковываются?
1) При загрузке изображения в объект System.Drawing.Image из файла или потока?
2) При использовании Bitmap.LockBits?
3) При создании объекта Graphics из заданного изображения?
В идеале я хочу, чтобы система распаковывала данные только один раз для каждого изображения, но мне нужно знать, что происходит под капотом, чтобы это гарантировать.