|
Основной форум Сюда все проблемы связанные с программированием. |
06.02.2013, 22:27
|
#1
|
Оператор ЭВМ
Регистрация: 19.10.2010
Сообщений: 22
Написано одно полезное сообщение
|
Разная высота строк
Почему на разных телефонах разная высота строк? Чтобы мне нарисовать какой-то текст посередине по вертикали, то нужно знать высоту каждой строки и отступы между ними, но почему-то на разных устройствах высота разная. Как с этим бороться?
|
(Offline)
|
|
07.02.2013, 23:10
|
#2
|
Оператор ЭВМ
Регистрация: 17.12.2011
Сообщений: 26
Написано 4 полезных сообщений (для 5 пользователей)
|
Ответ: Разная высота строк
Для того чтобы получить высоту строки используй GetStringHeight('Текст'), для ширины GetStringWidth('Текст').
Рисует строку в центре экрана:
DrawText('Текст', (GetWidth-GetStringWidth('Текст'))/2, (GetHeight-GetStringHeight('Текст'))/2);
|
(Offline)
|
|
08.02.2013, 17:36
|
#3
|
Оператор ЭВМ
Регистрация: 19.10.2010
Сообщений: 22
Написано одно полезное сообщение
|
Ответ: Разная высота строк
Сообщение от Maga05
Для того чтобы получить высоту строки используй GetStringHeight('Текст'), для ширины GetStringWidth('Текст').
Рисует строку в центре экрана:
DrawText('Текст', (GetWidth-GetStringWidth('Текст'))/2, (GetHeight-GetStringHeight('Текст'))/2);
|
Я так и делаю, но проблема в том, что на разных телефонах значение, полученное с помощью GetStringHeight, тоже разное
|
(Offline)
|
|
09.02.2013, 18:25
|
#4
|
Оператор ЭВМ
Регистрация: 17.12.2011
Сообщений: 26
Написано 4 полезных сообщений (для 5 пользователей)
|
Ответ: Разная высота строк
А чего ты хотел. Если нужен один размер, используй графический шрифт (Lib_font32).
|
(Offline)
|
|
09.02.2013, 21:06
|
#5
|
ПроЭктировщик
Регистрация: 30.06.2009
Адрес: Челябинская обл.
Сообщений: 111
Написано 32 полезных сообщений (для 99 пользователей)
|
Ответ: Разная высота строк
Сообщение от 9ik
Я так и делаю, но проблема в том, что на разных телефонах значение, полученное с помощью GetStringHeight, тоже разное
|
Конечно, диагональ и dpi у всех телефонов разные, и системные шрифты соответственно тоже. Если дизайн приложения не особо критичен, лучше использовать системные шрифты, коих на многих телефонах доступно целых три размера. Игры с самодельными шрифтами лучше, имхо, изначально адаптировать под определённую модель/разрешение экрана (а ещё лучше сделать несколько версий под разные экраны). Для примера можно сравнить, как будет смотреться шрифт Arial 8 pt на экранах 128*160 у SE/Samsung/... или 360*640 у смартов Nokia.
__________________
Аинéжарбази овокáсьф имятнэ́меле как, имякщтóт и имяини́ль оклёт ими́ньдо сяюзлёп, ильсы́м эынэвьтспóс ышáн мóнян тягалзи, эы́жущт тят-ищт сант-ищтý анакаккáт; áкызэй овóваримь авотэ́ як итя́ммарг тыжýлс аирьтэмяег аянлетя́трэщтанот, мадóраи мынавóзарбо мэ́сьф мынтáняп авокáныдя, икиньхэ́ть мóкызэй астэя́львэй шóтрэщт ильсэ́й.
Щамóпф раткáдэрь оидюá!
|
(Offline)
|
|
10.02.2013, 13:43
|
#6
|
Оператор ЭВМ
Регистрация: 19.10.2010
Сообщений: 22
Написано одно полезное сообщение
|
Ответ: Разная высота строк
Сообщение от Maga05
Для того чтобы получить высоту строки используй GetStringHeight('Текст'), для ширины GetStringWidth('Текст').
Рисует строку в центре экрана:
DrawText('Текст', (GetWidth-GetStringWidth('Текст'))/2, (GetHeight-GetStringHeight('Текст'))/2);
|
Сообщение от nil0q
Конечно, диагональ и dpi у всех телефонов разные, и системные шрифты соответственно тоже. Если дизайн приложения не особо критичен, лучше использовать системные шрифты, коих на многих телефонах доступно целых три размера. Игры с самодельными шрифтами лучше, имхо, изначально адаптировать под определённую модель/разрешение экрана (а ещё лучше сделать несколько версий под разные экраны). Для примера можно сравнить, как будет смотреться шрифт Arial 8 pt на экранах 128*160 у SE/Samsung/... или 360*640 у смартов Nokia.
|
еще бы хотел узнать, как можно протестировать свое приложение на определенной модели телефона, например приложения Яндекса или Оперы есть под каждый телефон, но они же не покупали и не закачивали на каждую модель
|
(Offline)
|
|
10.02.2013, 15:19
|
#7
|
Оператор ЭВМ
Регистрация: 17.12.2011
Сообщений: 26
Написано 4 полезных сообщений (для 5 пользователей)
|
Ответ: Разная высота строк
используй kemulator
|
(Offline)
|
|
10.02.2013, 16:10
|
#8
|
Нуждающийся
Регистрация: 05.08.2011
Сообщений: 85
Написано 16 полезных сообщений (для 16 пользователей)
|
Ответ: Разная высота строк
есть эмуляторы различных телефонов. Например SDK Nokia S40 5ed или для других телефонов
|
(Offline)
|
|
10.02.2013, 17:59
|
#9
|
Оператор ЭВМ
Регистрация: 19.10.2010
Сообщений: 22
Написано одно полезное сообщение
|
Ответ: Разная высота строк
Сообщение от Maga05
используй kemulator
|
а разве там возможно выбирать различные разрешения?
|
(Offline)
|
|
10.02.2013, 18:42
|
#10
|
Оператор ЭВМ
Регистрация: 19.10.2010
Сообщений: 22
Написано одно полезное сообщение
|
Ответ: Разная высота строк
Сообщение от Amigo888
есть эмуляторы различных телефонов. Например SDK Nokia S40 5ed или для других телефонов
|
можно, только вот LG не выпускает для своих телефонов эмуляторов
|
(Offline)
|
|
10.02.2013, 19:30
|
#11
|
Разработчик
Регистрация: 27.01.2011
Адрес: Афипский
Сообщений: 419
Написано 100 полезных сообщений (для 182 пользователей)
|
Ответ: Разная высота строк
Сообщение от 9ik
а разве там возможно выбирать различные разрешения?
|
В KEmulator можно даже системные шрифты выбирать и раскладку кодов клавиатуры.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:23.
|