flex中为image或其他控件绑定图片路径时Embed标签与我们直接使用source=”url”是有区别的,每个flex程序中相信都会用到很多图片,所以了解Embed与直接url的区别是很有必要的,合理使用两种方法,可以有效控制你发布swf程序的大小。
看这两个例子:
1. <s:Image source="@Embed('images/1.png')" /> 2. <s:Image source ="/common/assets/images/1.png" />
他们都是显示1.png。
区别在于#1中的1.png会被编译进入主swf从而增大发布文件的体积。 #2中的图片会在运行时被加载,图片不会被编译进入主swf。
#1的优点是图片载入没有延时。
#2的优点是节省swf体积,与普通html页面载入图片一样。
所以根据需要善用好embed与url可以有效的控制我们主swf的大小。
注意 #2中图片的路径是发布到bin目录以后与主swf的相对路径,而不是与当前mxml或as的相对路径。 embed路径是与当前mxml或as文件的相对路径。