Flex字体渲染差异从4.1到4.5

我目前正在将应用程序从Flex 4.1升级到4.5 我们注意到,当在小尺寸下使用时,Arial字体在两个版本之间的呈现方式不同。 这是一个简单的应用示例:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
    <fx:Style>
        @namespace s "library://ns.adobe.com/flex/spark";
        @namespace mx "library://ns.adobe.com/flex/mx";
        @font-face { 
            src: url("/assets/fonts/ARIAL.ttf"); 
            fontFamily: arial; 
            embedAsCFF: true; 
        }
        @font-face { 
            src: url("/assets/fonts/ARIALBD.ttf"); 
            fontFamily: arial; 
            embedAsCFF: true; 
            font-weight: bold;
        }
        global
        {
            font-family: arial;
        }
    </fx:Style>
    <s:Label text="Hello world" fontWeight="bold" x="20" y="20"  />
</s:Application>
当针对2个不同的sdks运行时,这是我们得到的字体渲染的图像: 请注意,在4.5中,字体看起来略微压扁。 造成这种情况的原因是什么,我们如何解决?     
已邀请:
我最好的猜测是,它与支持手持设备上的字体所做的更改有关。要修复它,您可能需要稍微使用样式表设置。   CSS媒体查询   您现在可以在样式表中使用@media规则   根据设备过滤CSS规则   DPI分类。那里有两个   您可以过滤的属性   目前,os-platform和   应用程序的DPI。这是一个例子   过滤它们以设置按钮字体   例如(来自Adobe的预发行版   文档):
@media (os-platform: "Android") and (application-dpi: 240) {
s|Button {
     fontSize: 10;
}
    
要暂时修复此问题,只需在flex-config.xml上指定SWF版本10即可
look for <swf-version>11</swf-version> and make that a 10

(the "target-player" tag remains as 10.2.0)
这个配置允许你使用10.2新API,但我想它会错过硬件优化(可能没有StageVideo ......警告:我不确定,还没有测试过。我唯一做的就是检查它10.2有特定的方法,比如“requestSoftKeyboard”) 我想这个问题与新的“亚像素文本渲染”有关,Adobe在10.2版本上推出或者新玩家只是以不同的方式呈现文本。 顺便说一句,这个问题真的很难看,小字体变得模糊,中等大小的字体明显被压扁了! 任何真正的修复,允许我们以SWF 11为目标,请告诉我们。     

要回复问题请先登录注册