Flash Lite 可以对矢量图形和位图图形进行渲染。每种类型的图形都具有其自身的优点和缺点。有关使用矢量图形(而非位图图形)的决定并不总是显而易见的,通常取决于几个因素。
矢量图形在 SWF 文件中可用数学方程简洁地表示,并在运行时由 Flash Lite 播放器渲染。相比之下,位图图形是以图片元素(像素)的数组表示,这需要更多字节的数据。因此,在文件中使用矢量图形可有助于减小文件大小和内存使用量。
矢量图形还可在进行大小缩放时保留其平滑形状。位图图像可以在进行缩放时以框状(或像素化)的形式显示。
与位图相比,矢量图形需要更多的处理能力来进行渲染,特别是包含许多复杂形状和填充的矢量图形。因此,大量使用矢量形状有时会降低文件的整体性能。由于位图图形进行渲染所需的处理时间比矢量图形少,因此对于某些文件而言,最好是选择位图图形(例如,要在移动电话上进行动画显示和滚动的复杂道路图)。
请牢记以下注意事项:
避免在矢量形状上使用轮廓。轮廓包含一个内边缘和一个外边缘(填充只有一个边缘),因此要对其渲染两次。
对角进行渲染要比曲线简单得多。如果可能,请使用平滑边缘(特别是非常小的矢量形状)。
优化对于小矢量形状(如图标)特别有用。复杂图标可能会在渲染时丢失细节,并浪费渲染细节的工作。
一条通用规则是,对较小的复杂图像(如图标)使用位图;较大的简单图像使用矢量图形。
按照正确的大小导入位图图形;不要导入较大的图形并在 Flash 中将它们缩小,因为这会浪费文件大小和运行时内存。
Flash Lite 播放器不支持位图平滑。如果对位图进行缩放或旋转,它将具有短粗形外观。如果必须对图形进行缩放或旋转,可以考虑改为使用矢量图形。
文本实质上是一种非常复杂的矢量形状。当然,文本通常很重要,因此很少能够完全避免使用文本。如果必须使用文本,则应避免制作动画文本或将其放在动画上方。考虑将文本用作位图。对于多行动态和输入文本,将不会对文本字符串的换行符进行缓存。Flash 会在运行时换行,并在每次需要重新绘制文本域时重新计算换行次数。静态文本域不会有问题,因为在编译时已预先对换行进行了计算。对于动态内容,使用动态文本域是不可避免的,但是如果可能,应考虑改为使用静态文本域。
在 PNG 文件中应尽可能减少对透明度的使用;Flash 甚至必须计算对位图的透明部分进行的重绘。例如,对于表示前景元素的透明 PNG 文件,不要按照屏幕的完全大小导出透明 PNG, 而应按照前景元素的实际大小将其导出。
尝试分别将位图图层和矢量图层组合在一起。Flash 需要为位图和矢量内容执行不同的渲染器,而在渲染器之间进行切换需要花费一定的时间。
有关创建移动电话和移动设备内容的更多技巧和方法,请参阅 www.adobe.com/go/learn_cs_mobilewiki_en。