Подтвердить что ты не робот

Что такое пиксель и точки в iPhone?

из ссылки UIImage,

размер

Размеры изображения, учитывающие ориентацию. (Только для чтения)

@property(nonatomic, readonly) CGSize size

Обсуждение

В iOS 4.0 и более поздних версиях это значение отражает логический размер изображения и измеряется в точках. В iOS 3.x и ранее это значение всегда отражает размеры изображения, измеренные в пикселях.

Какая разница между пикселями и точками?

4b9b3361

Ответ 1

Пиксель на iOS - это полное разрешение устройства, что означает, что если у меня есть изображение размером 100x100 пикселей, то телефон будет отображать его 100x100 пикселей на стандартном устройстве без сетчатки. Однако, поскольку новые iPhone имеют четырехкратную плотность пикселей, это же изображение будет отображаться с разрешением 100x100 пикселей, но будет выглядеть вдвое меньше. Инженеры iOS решили эту проблему очень давно (еще в OS X с Quartz), когда они представили систему очков Core Graphics. Точка - это стандартная длина, эквивалентная 1х1 пикселю на устройстве без сетчатки и 2х2 пикселя на устройстве с сетчаткой. Таким образом, ваше изображение 100x100 будет отображаться в два раза больше на устройстве Retina и в основном нормализует то, что видит пользователь.

Он также обеспечивает стандартную систему измерения на устройствах iOS, потому что независимо от того, как изменяется плотность пикселей, всегда было 320x480 точек на экране iPhone и 768x1024 точек на экране iPad. *

Но в то же время вы можете игнорировать документацию, учитывая, что устройства Retina были представлены как минимум с iOS 4, и я не знаю слишком многих людей, все еще использующих iOS 3 на новом iPhone. Но если возникает такой случай, ваш UIImage должен будет отображаться точно в два раза больше его размеров в пикселях на сетчатке iPhone, чтобы компенсировать разницу в плотности пикселей.

* Начиная с iPhone 5, размеры iPhone больше не стандартизированы.Пожалуйста, используйте соответствующие API для получения размеров экрана или использования ограничений макета.

Ответ 3

Использование данных из http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions Я установил формулу sqrt (pointWidth ^ 2 + pointHeight ^ 2)/diagonalInches, чтобы выяснить, сколько указывает каждый отображаемый телефон на дюйм.

Результаты:

  • iPhone 2G, 3G, 3GS, 4, 4s = 164.825201164068082 Очки за дюйм

  • iPhone 5, 5s = 162.9846618550346903

  • iPhone 6 = 162.8061416117083255

  • iPhone 6 Plus = 153.535954278463216

Как вы можете сказать, точка примерно одинакового размера на каждом телефоне. Используя тот же веб-сайт, вы можете настроить ту же формулу с значениями пикселей, и вы заметите большие неровности из-за более высокой плотности пикселей на новых телефонах.