Должны ли размеры (высота / ширина) изображений сетчатки (@ 2X) всегда быть кратными двум? - PullRequest
3 голосов
/ 22 февраля 2012

Я получил несколько графических файлов для кнопок и т. Д. От дизайнера. Большинство файлов сетчатки имеют одно или оба нечетных размера, например 29 x 30 или 79 x 61, и тогда размеры соответствующих файлов без сетчатки будут, например, 15 x 15 или 39 x 31. Размеры UIImageView s, которые содержат каждое изображение, в точности соответствуют размеру файлов, не содержащих сетчатку, которые они содержат, поэтому на телефоне без сетчатки нет искажений, и все выглядит хорошо.

На телефоне с сетчаткой глаза эти изображения (значки и т. Д.) Выглядят хорошо только тогда, когда изображения имеют четные размеры (например, 30 x 30 или 46 x 80); когда изображение нечетное, оно слегка искажается.

Должны ли размеры в пикселях изображения на сетчатке в два раза превышать размеры, не связанные с сетчаткой, и размеры рамки, в которой она отображается?

Ответы [ 3 ]

3 голосов
/ 22 февраля 2012

Как следует из названия (@ 2X), действительно предполагается, что версия Retina ровно в два раза больше, чем версия без Retina.В противном случае, как вы видели, могут быть искажения.

В примечании стороннего характера это имеет косвенное отношение только к отображаемой рамке, например, к представлению scrollviews.

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

О, и даст вашему дизайнеру эту ссылку:

http://www.smashingmagazine.com/2010/11/17/designing-for-iphone-4-retina-display-techniques-and-workflow/

1 голос
/ 22 февраля 2012

Это выглядело бы так.

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

На дисплее сетчатки это резервное хранилище просто умножается на коэффициент масштабирования.В настоящее время этот масштабный коэффициент равен 2 для iPhone 4 и iPhone 4s.Это означает, что резервное копирование на дисплеях сетчатки всегда будет кратно 2.

Ваше представление 30 на 30 точек будет иметь резервное хранилище 60 на 60 пикселей.Если ваши изображения не отображаются должным образом для дисплеев сетчатки, может показаться, что изображение @ 2x должно соответствовать полному размеру бэк-хранилища и, следовательно, точно удваивать размер изображения в точках.

1 голос
/ 22 февраля 2012

Да, файлы изображений, к которым добавлено @2x, должны иметь размер точно , вдвое превышающий размер изображения «без» на сетчатке. При этом должны иметь только четные размеры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...