Использование памяти изображениями в WPF
Это вопрос понимания.
Когда у меня есть изображение в формате JPEG (A4, 96DPI, 24 бита на пиксель), которое занимает 200 КБ при уровне качества 90% на диске, и я загружаю его в WPF (например, с XAML).
<Image Source="MyJpeg.jpg"></Image>
WPF потребляет память для изображения не (только) 200 КБ, но не менее 8,27 x 11,69 X 96² X 24 / 8 / 1024 = 2610,26 КБ, верно?
с:
Size of A4 = 8.27 inch x 11.69 inch
Pixels in the whole picture = [Size of A4] x 96²
Bits for the whole picture = [Pixels in the whole picture] x 24
Bytes for the whole picture = [Bits for the whole picture] / 8
1 ответ
Решение
DPI полезен только тогда, когда вы хотите узнать физический размер вашего изображения на физическом дисплее (экран, бумага).
Ваше изображение в формате jpg имеет ширину и высоту в пикселях. При использовании в качестве источника изображения оно преобразуется в растровое изображение, размер которого примерно равен в битах:
ширина * высота * бит на пиксель