AntiAliasType.ADVANCED + Filter = Trouble

Kategori: Tips og tricks | Kommentarer (0)
Gemt: 2011-01-27 12:56


Bare et hurtigt lille tip:
Hvis du bruger AntiAliasType.ADVANCED + et eller anden filter, eksempelvis DropShadowFilter, på dine tekstfelter, så vil du med stor sandsynlighed rende ind i et problem hvor noget af teksten kan hoppe vertikalt.
Hvis tekstfeltet yderligere også er sat til autosize, så er der også en risiko for at det sidste bogstav på en linie bliver beskåret.

Netop de problemer har drillet mig den sidste uges tid, men med hjælp fra en blog (som jeg desværre ikke kan huske hvad hedder) fandt jeg ud af, at det at stille værdien rightMargin umiddelbart ser ud til at kunne løse begge problemer.

Her et eksempel som jeg i hvert fald ikke har fået til at fejle endnu:

var _shadow:DropShadowFilter = new DropShadowFilter(1,
						95,
						0x000000,
						1,
						0,
						0,
						0.5,
						BitmapFilterQuality.HIGH
						);

var _tf:TextFormat = new TextFormat();
_tf.rightMargin = 3;
_tf.size = 15;
_tf.align = TextFormatAlign.LEFT;

var _txt:TextField = new TextField();
_txt.text = "En eller anden tekst";
_txt.embedFonts = true;
_txt.multiline = false;
_txt.autoSize = TextFieldAutoSize.LEFT;
_txt.antiAliasType = AntiAliasType.ADVANCED;
_txt.defaultTextFormat = _tf;
_txt.setTextFormat(_tf);
_txt.filters = [_shadow];
addChild(_txt);