цель-c определить разрешение изображения - PullRequest
4 голосов
/ 05 августа 2011

Почему-то я не мог этого понять.

UIImage *image = //initialize with some image, etc.

Есть ли способ получить разрешение изображения?

Ответы [ 2 ]

6 голосов
/ 05 августа 2011

Вы имеете в виду ширину / высоту?

CGFloat width = image.size.width
CGFloat height = image.size.height
2 голосов
/ 05 августа 2011

Чтобы найти размеры изображения, вы можете использовать свойство size для UIImage.DPI (разрешение / масштаб) можно найти через атрибут scale.Вот ссылка из документации Apple :

Коэффициент масштабирования изображения.(только для чтения)

@property (nonatomic,readonly) CGFloat scale

Обсуждение

Если вы загружаете изображение из файла, имя которого содержит модификатор @ 2x, масштаб будет установлен на 2,0.Если имя файла не содержит модификатор, но имеет формат PNG или JPEG и имеет соответствующее значение DPI, соответствующий масштабный коэффициент вычисляется и отражается в этом свойстве.Вы также можете указать явный масштабный коэффициент при инициализации изображения из образа Core Graphics.Предполагается, что все другие изображения имеют масштабный коэффициент 1,0.

Если умножить логический размер изображения (сохраненный в свойстве размера) на значение в этом свойстве, вы получите размеры изображения впикселей.

Для обычных изображений масштаб будет 1,0.Для изображений JPG / PNG масштаб может быть другим.Кроме того, если перед расширением имя вашего изображения имеет значение «@ 2x», UIImage предполагает, что его масштаб равен 2,0.

...