2009-12-09 8 views
0

J'ai rencontré un petit problème graphique dans Flash. Il semble être à la fois dans le FP9 - Exporté via Flash CS3, et FP10 - Exporté via le SDK Flex 4 beta. Le problème/problème se manifeste sous la forme d'un texte incorporé à une petite taille de point "épanouie" dans des conditions normales. Il ressemble fondamentalement à l'antialiasing devient plus gros à un certain niveau de luminosité du texte. J'ai fait un petit cas de test ci-dessous. (De toute évidence) Vous aurez besoin d'intégrer la police Arial dans votre fichier SWF compilé pour que le code ci-dessous fonctionne.TextField Antialiasing dans Flash CS3/FP10 provoquant le scintillement du texte et sa "floraison"?

var myText:TextField = new TextField(); 
myText.embedFonts = true; 
myText.antiAliasType = AntiAliasType.ADVANCED; 
myText.autoSize = TextFieldAutoSize.LEFT; 
var myFormat:TextFormat = myText.getTextFormat(); 
myFormat.size = 8; 
myFormat.font = 'Arial'; 
myFormat.color = 0x663300; 
myText.defaultTextFormat = myFormat; 
myText.text = 'Bloom Example'; 
addChild(myText); 
var composit:ColorTransform = new ColorTransform(); 
var timestamp:Number = getTimer(); 
function enterFrame (event:Event):void{ 
    var n:Number = (getTimer() - timestamp)/1000.0; 
    composit.redMultiplier = 1-n; 
    composit.greenMultiplier = 1-n; 
    composit.blueMultiplier = 1-n; 
    composit.redOffset = 250 * n; 
    composit.greenOffset = 250 * n; 
    composit.blueOffset = 0; 
    myText.transform.colorTransform = composit; 
    if (n >= 1) removeEventListener(Event.ENTER_FRAME, enterFrame); 
}; 
addEventListener(Event.ENTER_FRAME, enterFrame); 

Vous pouvez voir un exemple du problème en roulant sur l'élément graphique ici: http://bandcamp.fieldsofnoise.org/dump/bloom.swf

Il est pas vraiment une option pour changer AntiAliasType.NORMAL car il rend le chemin texte moins lisible à ce point Taille.

Toute aide pour trouver une solution appropriée à ce problème serait appréciée.

Répondre

0

Je pense que lorsque vous modifiez la luminosité, vous augmentez les valeurs pour tous les pixels de la police, y compris les pixels anti-aliasing. Avez-vous essayé de changer la couleur plutôt que d'augmenter la luminosité? Ou même en appliquant une teinte simple?

+0

La version SWF externe que je lier est une 'simple teinte'. C'est faire mathématiquement l'équivalent de ce que je suis en train de faire avec la transformation de couleur composite. – Jotham