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

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

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

Регистрация: Nov 2005
Сообщений: 148
По умолчанию htmlText переносит текст после тэга

Такя проблемка. Есть код:
Код AS3:
 
import flash.text.Font;
import flash.text.StyleSheet;
import fl.text.TLFTextField;
import flash.text.TextFormat;
import flash.text.TextFieldAutoSize;
 
public class Viewer extends MovieClip {
 
 private var fontSegoeWP	:Font;
 private var fontSegoeWPBold	:Font;
 private var textFormat		:TextFormat;
 
  public function Viewer(str:String) {
 
   fontSegoeWP=new EmbededFont();
   fontSegoeWPBold=new EmbededFont2();
   textFormat=new TextFormat();
   textFormat.font = fontSegoeWP.fontName;
   textFormat.size = 25;
 
   this.TLF_text.autoSize = TextFieldAutoSize.LEFT;
   this.TLF_text.defaultTextFormat = textFormat;
   this.TLF_text.embedFonts = true;			
   var style:StyleSheet = new StyleSheet();
   style.parseCSS("h1{font-family: "+fontSegoeWPBold.fontName+"; fontWeight:bold}");
   var modifyText:String = str.split("\r").join("");
   this.TLF_text.styleSheet = style;
   this.TLF_text.htmlText = modifyText;
  }
Текст лежит в XML-ке:
Код AS3:
<InfoText>
<![CDATA[<Font size='32' color='#FF0000'>Так меняем размер и цвет</Font>, а так <h1> делаем болд.</h1> Всё, что вне тэгов печатается обычным шрифтом]]> 
</InfoText>
Вот что получается:
[IMG]http://s3.********************/uploads/images/2012/08/01604cd37a1130b7f63334ceb75ce86f.jpg[/IMG]
Т.е. после закрытия тэга строка переходит на следующую линию.
Тэг <b> не использую, т.к. шрифт специфический, он без болда и htmlText тэг игнорирует.

Как htmlText заставить не переносить строку?

PS, sorry за орфографическую ошибку )


Последний раз редактировалось zerAlex2; 25.08.2012 в 12:29.
Старый 25.08.2012, 06:47
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Зачем там используется тег заголовка h1?
Естественно нормальный html будет считать это заголовком и перенесет остальную часть на следующую строку.
Нужно заменить тег на какой-то другой. Например <span>

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

Регистрация: Nov 2005
Сообщений: 148
А так пропадает болд (
[IMG]http://s2.********************/uploads/images/2012/08/e8e3e52f657307cf19fd0f7cb3e802f9.jpg[/IMG]

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

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Так для болда есть <b></b>
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 25.08.2012, 12:26
zerAlex2 вне форума Посмотреть профиль Отправить личное сообщение для zerAlex2 Найти все сообщения от zerAlex2
  № 5  
Ответить с цитированием
zerAlex2

Регистрация: Nov 2005
Сообщений: 148
Я писал, шрифт специфический. С <b> </b> получается:
[IMG]http://s3.********************/uploads/images/2012/08/52fa13c0df12462cd4a5bc37c9f96ec9.jpg[/IMG]
Хоть, если отключить style, хоть если в style указать тэг b{...}
В общем, для того я второй шрифт и завёл.
Может htmlText какую-то блочность задаёт?


Последний раз редактировалось zerAlex2; 25.08.2012 в 12:38.
Старый 25.08.2012, 12:44
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 6  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
style.parseCSS("b {font-family: "+fontSegoeWPBold.fontName+"; fontWeight:bold}");
Правда насчет последнего правила не уверен, начертание итак болд, в самом шрифте. Требовать от него еще болда — значит требовать другой файл шрифта fontSegoeWPBold.. Это ошибка разработчика шрифта, он должен был указать одинаковый font family "SegoeWP" в обоих файлах, и полужирному начертанию указать что это болд)).. а так создал два файла разных шрифтов, то есть второй не считается начертанием болд для первого.
__________________
Reality.getBounds(this);

Старый 25.08.2012, 13:12
zerAlex2 вне форума Посмотреть профиль Отправить личное сообщение для zerAlex2 Найти все сообщения от zerAlex2
  № 7  
Ответить с цитированием
zerAlex2

Регистрация: Nov 2005
Сообщений: 148
Нет, и так не работает (
Убрал второй шрифт и добавил цикл, для просмотра свойств шрифта:
Код AS3:
fontSegoeWPBold=new EmbededFont2();//Эту строку убрал
 
var fonts:Array = Font.enumerateFonts();
for (var f:int = 0; f < fonts.length; f++)
{
 var font:Font = (fonts[f] as Font)
 trace(font.fontName, ",", font.fontStyle, ",", font.fontType)
}
После убрал вообще всякий стиль, результат тот же.

Выдаёт (это с 2-мя подгруженными шрифтами):
Код:
Segoe WP Light , regular , embedded
Segoe WP , bold , embedded
Segoe WP Light , regular , embeddedCFF
Segoe WP , regular , embeddedCFF
Segoe WP Light , regular , embeddedCFF
Segoe WP , regular , embeddedCFF
Если же удалить из библиотеки второй шрифт, который я хотел использовать как болд:
Код:
Segoe WP Light , regular , embedded
Segoe WP Light , regular , embeddedCFF
Segoe WP , regular , embeddedCFF
Segoe WP Light , regular , embeddedCFF
Segoe WP , regular , embeddedCFF
Т.е. болда в первом шрифте "Segoe WP" нет, а во втором есть. Но второй тоже "Segoe WP", только болдовый.

Походу, из-за шрифта проблемы... Во всяком случае, раньше со стандартными шрифтами всё получалось.

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Я уже как-то говорил, что родной компилятор Flash IDE не позволяет назначать шрифтам "свое" имя семейства, то есть выдавать фактически разные шрифты за шрифты одного семейства. Когда шрифт импортируется в библиотеку, имя которое Вы вводите в поле в окне импорта, это имя Символа в библиотеке. Именно поэтому потом в коде приходится обращаться к шрифту как fontSegoeWPBold.fontName. Потому что настоящего имени шрифта Вы не знаете, точнее не задаете его самостоятельно. Во flex_sdk с тегами [Embed] все гораздо проще.
Вложения
Тип файла: zip CustomFontFamilies.zip (168.5 Кб, 20 просмотров)
__________________
Reality.getBounds(this);

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
В вашем списке есть нюанс — болд добавлен в библиотеку НЕ как CFF, поэтому не может быть использован TLFTextField.
Цитата:
Segoe WP , bold , embedded
Segoe WP , regular , embeddedCFF
__________________
Reality.getBounds(this);

Старый 25.08.2012, 13:58
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 10  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Цитата:
Сообщение от zerAlex2 Посмотреть сообщение
Может htmlText какую-то блочность задаёт?
Что значит "какую-то"? Вполне конкретную, описанную в спецификациях.
Цитата:
Теги <h1>,...,<h6> относятся к блочным элементам, они всегда начинаются с новой строки, а после них другие элементы отображаются на следующей строке.
Они используются для заголовков, и их нужно использовать для заголовков, а не для болда.
__________________
Идите первым!

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

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

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


 


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


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