Flex 3 与 Flex 4 之间的区别(5)

分类:Flash_Flex_AIR| 发布:camnprbubuol| 查看: | 发表时间:2010/11/7

使用文本

所有 Spark 组件都使用 Flash Player 10 中的新文本引擎。这些新类为控制文本度量标准、垂直文本以及连字、双向文本等字形元素提供了低级支持。Flex 4 SDK 在使用文本的所有 Spark 组件中用到了这一功能。有关 Flex 4 提供的文本基元和文本组件的更多信息,请参阅 Spark 文本基元规范*中的“文本基元”部分。

Spark 组件现在还使用 Flash Player 10 和 AIR 1.5 中的 DefineFont4 嵌入字体格式。默认情况下,MX 组件不使用 DefineFont4。将 Spark 和 MX 组件混合在一个应用程序中并嵌入字体时,这会造成一些开销。如果要对所有组件使用同一种嵌入字体,您需要为项目添加一个额外的主题编译器参数。借助这个新主题,MX 和 Spark 组件都将使用同一个 DefineFont4 字体引擎。在“Properties”(属性)->“Flex Compiler”(Flex 编译器)面板中选中“Use Flash Text Engine in MX components”(在 MX 组件中使用 Flash 文本引擎)选项,即可添加这个编译器参数。(请参阅图 3)。

允许 MX 组件使用 DefineFont4 字体引擎

图 3.允许 MX 组件使用 DefineFont4 字体引擎。

在 Flex 4 应用程序中使用文本时,我建议使用 Flex 4 的三个 Spark 文本组件之一。它们都使用 flash player 的新文本引擎,并且为设备字体和双向文本提供更高质量的文本、字距微调和旋转。以下是 Flex 4 中提供的文本组件之间的区别。

 多行截断可选择
mx.controls.Label
mx.controls.Text
spark.components.Label
spark.primitives.RichEditableText
spark.primitives.RichText
 可编辑HTML 格式化滚动
mx.controls.Label
mx.controls.Text
spark.components.Label
spark.primitives.RichEditableText
spark.primitives.RichText

与 Flex 3 的向后兼容性

与 Flex 3 一样,您可以使用其他编译器参数编译应用程序:

-compatibility-version=3.0.0. 

这个编译器参数允许应用程序使用某些 Flex 3 行为,而不是新的 Flex 4 行为。要获得 Flex 4 中支持使用 -compatibility-version 参数的向后兼容性变化的完整列表,请参阅向后兼容性文档*

注意:调用 Flex 3 兼容性时,无法选择性地保留一个 Flex 4 行为变化子集。如果使用参数 -compatibility-version=3.0.0 进行编译,您将获得文档中描述的所有 Flex 3 行为。

后续工作

从 Flex 3 迁移到 Flex 4 有可能没那么痛苦。这个框架旨在尽可能地向后兼容。并且,当您熟悉新架构后,您会发现它其实更“灵活”!有关 Flex 4 功能的更多信息,请访问 Web 帮助*

上一篇

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/flash-air/86.html