PDA

Просмотр полной версии : Как встроить шрифт в TLF?


Bred45
06.06.2013, 18:17
Подскажите, пытаюсь сгладить шрифт, но сглаживание вроде работает только со встроенными шрифтами. А как встроить?

Ну, вот что-то типа такого, например:
import fl.text.TLFTextField;

var tFlow:String = "<TextFlow xmlns='http://ns.adobe.com/textLayout/2008' fontFamily='Arial' fontSize='36'><p>Просто текст.</p></TextFlow>";
var tlf:TLFTextField = new TLFTextField();
tlf.tlfMarkup = tFlow;
tlf.border = true;
tlf.width = 850;
tlf.antiAliasType = flash.text.AntiAliasType.ADVANCED;//не срабатывает
tlf.x = 20;
tlf.y = 20;
addChild(tlf);

Пытаюсь встроить Arial, указав в ActionScript TLF(DF4).
Пишет ошибку:
The font named Arial is not compatible with TLF text. TLF text using this font will not display properly.

Подскажите, пожалуйста, у кого есть опыт встраивания и сглаживания в TLF.

AlexCooper
06.06.2013, 22:04
Не используйте TLF. Чем Вам классический TextField не угодил?

in4core
07.06.2013, 00:37
Не используйте TLF Почему?

AlexCooper
07.06.2013, 00:50
Почему?

насколько я знаю он достаточно проблемный нежели класический TextField

Bred45
07.06.2013, 14:16
Не используйте TLF. Чем Вам классический TextField не угодил?

А как Вы в классическом подсветку текста сделаете? Highlight, который. А тут атрибут в поток добавил - и все.

Final Hope
07.06.2013, 14:59
А как Вы в классическом подсветку текста сделаете? Highlight, который. А тут атрибут в поток добавил - и все.import flash.text.TextField;
import flash.text.TextLineMetrics;

var tf:TextField = new TextField();
tf.width = 100;
tf.height = 100;
tf.wordWrap = true;
tf.multiline = true;
tf.text = "ASDFASERWER weRWER Wer WER wer WER WERWERWER";
this.addChild( tf );

var lines:int = tf.numLines;
var tlm:TextLineMetrics;
for (var i:int = 0; i < lines; i++)
{
tlm = tf.getLineMetrics(i);
this.graphics.beginFill( 0xff0000 );
this.graphics.drawRect( tlm.x, i * tlm.height, tlm.width, tlm.height );
}:)

Bred45
11.06.2013, 18:29
Final Hope, спасибо.
Но вот надо мне выделить фрагмент. Динамически. В TLF я selectionBeginIndex и selectionEndIndex просто использую и свободен от любых расчетов координат. А у Вас придется, наверно, через getCharIndexAtPoint и getCharBoundaries?
Но, в общем, надо попробовать, спасибо за идею.