有没有什么办法能在Flash/Flex中模拟Photoshop中的流畅字体渲染选项?我已经尝试了不同的高级渲染设置(抗锯齿类型,网格适应类型等),但到目前为止运气并不是很好。你有什么想法吗?
有没有什么办法能在Flash/Flex中模拟Photoshop中的流畅字体渲染选项?我已经尝试了不同的高级渲染设置(抗锯齿类型,网格适应类型等),但到目前为止运气并不是很好。你有什么想法吗?
TextField类拥有一个关于锐利度(sharpness)和厚薄度(thickness)的属性。
锐利度可以在-400到400之间设置。 http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/text/TextField.html#sharpness
myField.sharpness = 400;
字体粗细:可设置范围为-200至200。http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/text/TextField.html#thickness
myField.thickness = -200
一般来说,将TextField实例设置为整个像素是一个好主意。我有时会子类化TextField并覆盖x和y的setter方法,例如:
override public function set x( value:Number ):void
{
super.x = Math.round( value );
}
我还发现,如果你正在使用像素字体,那么将TextField.antiAliasType
设置为AntiAliasType.ADVANCED
是一个好主意。
虽然不是一个确切的答案,但仍然有效。
你永远不可能让Flash中的字体看起来与它们在Photoshop中完全一样。 Photoshop使用比Flash更高级的字体渲染技术。这主要可能归因于Flash中的文本可以是动态的并且可以被动画化。在这些条件下,Photoshop使用的抗锯齿可能无法很好地处理。或者Adobe没有看到实现与Photoshop匹配的字体渲染的价值(不太可能)。
我在一家设计机构工作,甚至无法想象我告诉设计师他们的字体在Flash中看起来与在Photoshop中不同的次数。这是我们所有人必须应对的问题。
话虽如此,你可以经常通过Jeremynealbrown提出的技巧接近,并且通常就足够了。