2008-11-28 8 views

ответ

4

Некоторая путаница здесь.

  1. Независимо от того, работает ли альфа или нет, зависит ли текстовое поле от шрифтов устройства, а не от того, использует ли он HTML. (Шрифты устройства используются каждый раз, когда у вас есть динамический/вводный текст, и вы не вставляете шрифт.)

  2. Если возможно, просто опубликуйте для Flash Player 10, который теперь поддерживает альфа для шрифтов устройства. (Обратите внимание, что вы должны установить свойство alpha текстового поля или его родительского элемента - выбор прозрачного цвета для самого текста не работает.)

  3. Резервная опция для v8-9 - принудительное кэширование растрового изображения, применяя фильтр. Например, вы можете использовать тень с установленным цветом, который будет прозрачным. Это заставляет Flash отображать текстовое поле в растровое изображение, прежде чем рисовать его на экране, поэтому ваша альфа применяется к растровому изображению, и все работает.

  4. Для проигрывателя версии 7 или ниже нет возможности получить альфа-шрифт для устройства. Вы должны либо вставлять шрифт, либо учиться жить без альфы. : D

-1

Динамический текст не поддерживает альфа-свойство (среди прочих). Я предполагаю, что установка его в текст HTML накладывает те же ограничения. Один из способов, который я нашел вокруг этого, состоит в том, чтобы содержать текстовое поле в клипе и вместо этого устанавливать альфу в клипе.

+0

Динамический текст _ поддерживает знак альфы. Вы должны вставить шрифт. – aaaidan 2008-11-30 22:08:36

2

Если вы обнаружите, что текстовое поле не отвечает на свойство alpha, это, вероятно, потому, что вы не ввели шрифт. Убедитесь, что вы нажмете «Вставить ...» в свойства текстового поля и выберите, скажем, «Базовая латиница».

Если вы обнаружили, что ваше htmlText форматирования (например <b> и <i>) не отображается, вы должны убедиться, что эти (стилизованные) шрифты также встроены. Легкий способ сделать это - создать скрытые или нестационарные динамические текстовые поля со стилями, которые вам нужны (обязательно вставьте шрифт тоже!)

0

Вы можете сделать это, не вставляя шрифт, используя blendMode, с незначительная жертва в виде текста (я считаю).

import flash.display.BlendMode; 
import flash.text.TextField; 
// later... 
var tf:TextField = new TextField(); 
tf.blendMode = BlendMode.LAYER; 
tf.alpha = 0.5; 

 Смежные вопросы

  • Нет связанных вопросов^_^