ОК, я согласен, что это странный вопрос, но потерпите меня.
У меня есть TIFF
изображение, и я использую Windows
. Когда я щелкаю правой кнопкой мыши и перехожу на Properties
, я вижу Width = 1728 pixels
и Height
= 1146 pixels
. Когда я читаю это с Java
как BufferedImage
и звоню getWidth()
и getHeight()
, я вижу то же самое. Когда я открываю его с помощью MS Paint
, я вижу тот же размер.
Но проблема в том, что этот размер неправильный, потому что высота слишком мала и изображение выглядит идиотским . Теперь интересная часть: когда я открываю его с помощью IrfanView
, я вижу это нормально, с Height = 2292 pixels
. Когда я открываю его с помощью Windows Photo Viewer
, он выглядит нормально с Height = 2292 pixels
.
Итак, мой вопрос: как IrfanView
и Windows Photo Viewer
удалось распознать правильную высоту, хотя она была указана неправильно в метаданных изображения? А как сделать то же самое в Java? Я не хочу показывать идиотское изображение пользователю.
P.S Изображение пришло извне, и я ничего не могу сделать с неправильными метаданными ...