Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.08.2008, 21:04
Peregrin вне форума Посмотреть профиль Отправить личное сообщение для Peregrin Найти все сообщения от Peregrin
  № 1  
Ответить с цитированием
Peregrin
 
Аватар для Peregrin

Регистрация: Nov 2006
Адрес: Hamburg
Сообщений: 195
Отправить сообщение для Peregrin с помощью ICQ
По умолчанию Динамическое определение поддержки языка шрифтом

Такая проблема: пишу приложении для Нокии (Nokia), естественно в приложении используется специальные шрифт Nokia Standard. Текст для всего приложения передается через xml-файл и может содержать любые символы, а именно, для каждой страны будет свой xml, на своем языке. Шрифр Nokia Standard поддерживает английский, русский и другие родственные языки, но поддерживает арабский, китайский, грузинский и др.
Так вот, мне нужно динамически определить поддерживает ли шрифт данный язык или нет, если нет, то я переключусь на Arial.
Если нет выхода, придется просить у заказчика перечень всех поддерживаемых языков их шрифтом.

Старый 22.08.2008, 22:55
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Т.е. Вы предполагаете что на устройстве будет использоваться язык, для которого нет поддержки у шрифта Nokia Standard ?
__________________
Reality.getBounds(this);

Старый 23.08.2008, 12:38
Peregrin вне форума Посмотреть профиль Отправить личное сообщение для Peregrin Найти все сообщения от Peregrin
  № 3  
Ответить с цитированием
Peregrin
 
Аватар для Peregrin

Регистрация: Nov 2006
Адрес: Hamburg
Сообщений: 195
Отправить сообщение для Peregrin с помощью ICQ
я не предполагаю, я утверждаю, что так оно и будет. Для каждой страны текст будет написан на родном языке: корейский, японский, арабский и т.д.

Старый 23.08.2008, 13:08
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Не знаю, как сейчас, а раньше Nokia использовала шрифт Nokia Sans * (OT, например, с кириллицей).

Старый 23.08.2008, 13:45
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Да не, я не против того чтобы корейцы пользовались телефонами с английским интерфейсом. Просто у меня некоторое несоответствие вызывает сочетание двух слов: "Standart", что означает раз и навсегда установленный набор символов, и "Определить динамически". Т.е. либо файл этого шрифта намертво засекречен и не можете узнать, какие языки он поддерживает, либо понятия стандарта у Нокии своеобразны.
Ну в общем я вижу только один способ определять "динамически" - создать текстовое поле, забить туда контрольный текст на нужном языке и спросить textWidth. Если поля неподдерживаемых символов не забиты в шрифте рамочками-пустышками, получим ноль или около того))) Имхо, открыть шрифт в FontExpert гораздо проще и стабильнее)))
__________________
Reality.getBounds(this);

Старый 23.08.2008, 13:51
Peregrin вне форума Посмотреть профиль Отправить личное сообщение для Peregrin Найти все сообщения от Peregrin
  № 6  
Ответить с цитированием
Peregrin
 
Аватар для Peregrin

Регистрация: Nov 2006
Адрес: Hamburg
Сообщений: 195
Отправить сообщение для Peregrin с помощью ICQ
__etc, незнаю, что они использовали раньше, когда было это "раньше" (я пишу приложения для них с 2007 года), но сейчас они исплозуют следующий шрифты:
Nokia Large
Nokia Sans Wide
Nokia Standard
Nokia Standard Light
Nokia Standard Multiscript

Но это не меняет дела. Можно ли как-то определито поддерживаются те или иные символы или нет? Может нужно просто пробегаться по символам и вытаскивать их ASCII-коды?

Цитата:
Сообщение от Wolsh Посмотреть сообщение
Ну в общем я вижу только один способ определять "динамически" - создать текстовое поле, забить туда контрольный текст на нужном языке и спросить textWidth. Если поля неподдерживаемых символов не забиты в шрифте рамочками-пустышками, получим ноль или около того)))
а если в тексте будет хоть одна цифра или какой-нить символ, который поддерживается, то textWidth не будет равен нулю. И что тогда?


Последний раз редактировалось etc; 23.08.2008 в 17:41.
Старый 23.08.2008, 15:13
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 7  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Не, ну если Вы не в состоянии составить
Цитата:
контрольный текст
без цифр...
__________________
Reality.getBounds(this);

Старый 23.08.2008, 16:36
Peregrin вне форума Посмотреть профиль Отправить личное сообщение для Peregrin Найти все сообщения от Peregrin
  № 8  
Ответить с цитированием
Peregrin
 
Аватар для Peregrin

Регистрация: Nov 2006
Адрес: Hamburg
Сообщений: 195
Отправить сообщение для Peregrin с помощью ICQ
Wolsh, т.е. Вы предлагаете создать отдельное текстовое поле и поместить в него текст, который берется из xml'а, и проверить свойство textWidth, предварительно отчистив текст от цифр, пробелов, запятых и т.д. Я правильно понимаю?

Старый 23.08.2008, 19:01
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 9  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
цифр, пробелов, запятых
Ну вообщето это очень легко, ведь эти символы имеют точно известную кодировку.
А вот "пробежаться по символам..." точно не получится)) Да и ASCII тут совсем не причем, речь вроде о шрифте а не о клавишах))
Послушайте, символы каждого языка имеют совершенно определенный UTF-код. Цифры и прочая нечисть туда не попадают. Для предложенной мной проверки Вам надо только запостить в поле десяток символов языка - т.е. из того диапазона кодов, который этому языку соответствует. Если в шрифте есть глифы для этих кодов, у поля будет ширина.
Не надо чистить загруженный текст, мало ли, там может одни цифры в начале будут или латинское название компании))))
__________________
Reality.getBounds(this);

Старый 23.08.2008, 19:11
Peregrin вне форума Посмотреть профиль Отправить личное сообщение для Peregrin Найти все сообщения от Peregrin
  № 10  
Ответить с цитированием
Peregrin
 
Аватар для Peregrin

Регистрация: Nov 2006
Адрес: Hamburg
Сообщений: 195
Отправить сообщение для Peregrin с помощью ICQ
Wolsh, спасибо, я уже реализовал по-своему: взял текст из xml'а, отчистил от пробелов и всех знаков препинания, пробежался по строке, вытащил код каждого символа, и по среднему значения определяю: если оно больше 255, то перечлючаю шрифт на Arial Unicode, если нет, то оставляю без изменений.
Конечно, это немного топорно. Было бы неплохо, если бы во флеше была функция, которая показывает поддерживается ли язык шрифтом.

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:02.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:02.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.