crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Компонент для ретины и для нормального дисплея
ltise
  опции профиля:
сообщение 23.3.2014, 0:13
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 65
Регистрация: 17.4.2010
Пользователь №: 1636

Спасибо сказали: 0 раз(а)




Репутация:   0  


Подскажите плиз как разработать QML компонент с PNG картинками для обычного дисплея и для ретины.

Т/е у меня есть PNG в обычном размере и с размером x2 для ретины, как их правильно использовать ?

продублировать мои нормальные компоненты для ретины с размером х2 ? или есть более нормальное решение


Спасибо

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
navrocky
  опции профиля:
сообщение 26.6.2014, 22:01
Сообщение #2


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 26.6.2014
Пользователь №: 4176

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ltise @ 23.3.2014, 1:13) *
Подскажите плиз как разработать QML компонент с PNG картинками для обычного дисплея и для ретины.

Т/е у меня есть PNG в обычном размере и с размером x2 для ретины, как их правильно использовать ?

продублировать мои нормальные компоненты для ретины с размером х2 ? или есть более нормальное решение


Эта тема обширная. Сам я еще её не проходил, но определенные мысли есть. Во первых тебе надо знать плотность экрана. Для старого экрана она равна 1, для ретины 2. С появлением ыфон6 наверное появятся дробные значения, будет веселее, как на андроиде.

Собственно основная сложность - узнать эту плотность. Есть функции для определения разрешения экрана в пиикселях на мм. в объекте Screen, там же можно узнать его размер в пикселях. На основании этих данных можно выяснить ретина это или не ретина, а также айфон это или айпэд.

Эту константу можно положить в глобальную JS либу, которую подключать ко всем компонентам, и соответственно в коде каждого компонента, опираясь на неё, уже выбирать ту или иную картинку, регулировать размер отступов, толщину рамок и т.д.

Дерзай.

Цитата(ltise @ 23.3.2014, 1:13) *
Подскажите плиз как разработать QML компонент с PNG картинками для обычного дисплея и для ретины.

Т/е у меня есть PNG в обычном размере и с размером x2 для ретины, как их правильно использовать ?

продублировать мои нормальные компоненты для ретины с размером х2 ? или есть более нормальное решение


Эта тема обширная. Сам я еще её не проходил, но определенные мысли есть. Во первых тебе надо знать плотность экрана. Для старого экрана она равна 1, для ретины 2. С появлением ыфон6 наверное появятся дробные значения, будет веселее, как на андроиде.

Собственно основная сложность - узнать эту плотность. Есть функции для определения разрешения экрана в пиикселях на мм. в объекте Screen, там же можно узнать его размер в пикселях. На основании этих данных можно выяснить ретина это или не ретина, а также айфон это или айпэд.

Эту константу можно положить в глобальную JS либу, которую подключать ко всем компонентам, и соответственно в коде каждого компонента, опираясь на неё, уже выбирать ту или иную картинку, регулировать размер отступов, толщину рамок и т.д. Т.е. масштабировать руками, используя этот коэффициент.

Дерзай.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
iDarkLord
  опции профиля:
сообщение 24.10.2014, 10:35
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 20.10.2014
Пользователь №: 4255

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ltise @ 23.3.2014, 1:13) *
Подскажите плиз как разработать QML компонент с PNG картинками для обычного дисплея и для ретины.

Т/е у меня есть PNG в обычном размере и с размером x2 для ретины, как их правильно использовать ?

продублировать мои нормальные компоненты для ретины с размером х2 ? или есть более нормальное решение


Спасибо

Не использовать растровые изображения там где это возможно, а использовать SVG или рисовать на Canvas, размеры, отступы получать через объект Screen.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.11.2024, 18:52