`
dishell
  • 浏览: 68006 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

AS 中嵌入外部资源

阅读更多
虽然在有些情况下,在运行时使用 flash.display.Loader 类 读取资源很合适,但是在有些情况下有一些外部图形只想加载到 SWF 自里面。这时,如果使用 Flash IDE,可以简单地导入这个对象到库中并设置为“为 ActionScript 导出”。但在使用 Flex uilder 2 或 Flex 2 SDK 命令编译器时,没有库,那么如何在 SWF 中加载外部资源呢?
    答案是使用[Embed]元数据(metadata)标签嵌入资源,元数据标签是指加到ActionScript 文件中的非正式 ActionScript 语句。另外,它们指示编译器在编译过程中去做某种事情,[Embed]标签告诉编译器在最终的 SWF 文件中加载一个特殊的外部资源,资源可以是位图或外部 SWF 文件。告诉编译器要嵌入的资源所在的 source 路径的属性,如下:
[Embed(source="picture.jpg")]

在元数据语句的后面,直接声明一个 Class 类型的变量,如下:
[
Embed(source="picture.jpg")] 
private var Image:Class; 

现在可以使用这个变量创建一个新的资源实例,如下:
var img:Bitmap = new Image(); 

注意创建的这个对象是 Bitmap 类型的。如果嵌入一个外部 SWF 文件,创建的这个对
象应该是 Sprite 类型的,如下:
[Embed(source="animation.swf")] 
private var Anim:Class; 
var anim:Sprite = new Anim(); 


这里是一个在 SWF 中嵌入外部 JPEG 的例子:
package { 
 import flash.display.Sprite; 
 import flash.display.Bitmap; 
 public class EmbedAsset extends Sprite { 
  [Embed(source="picture.jpg")]; 
  private var Image:Class; 
  public function EmbedAsset() { 
   init(); 
  } 
  private function init():void { 
   var img:Bitmap = new Image(); 
   addChild(img); 
  } 
 } 
} 

如果我们使用 Flash IDE ,只要将对象导入到库中并“为 ActionScript 导出”给出
一个类名就可以了。不需要使用 [Embed] 元数据标签及类变量,事实上,Flash IDE 编译
器甚至不支持 [Embed] 元数据标签。
分享到:
评论

相关推荐

    Flex应用程序中嵌入各种类型的资源方法 源码

    本资料主要聚焦于在Flex中如何嵌入和管理这些资源,以提高应用程序的性能和用户体验。下面将详细阐述相关知识点。 1. **资源类型**: - 文本:包括静态文本和动态文本,可以是常量、XML、JSON等数据。 - 图像:如...

    vb.net嵌入和调用资源文件示例.zip

    嵌入资源在编译时会被打包到程序集中,便于随程序一起分发,而外部资源则允许程序运行时动态加载。 在VB.NET中,资源的嵌入通常通过Visual Studio的资源编辑器完成。打开项目,右键点击“资源”文件夹,选择“添加...

    VB程序中执行外部程序操作实例.rar

    在VB(Visual Basic)编程中,执行外部程序操作是一项常用的功能,这允许开发者通过VB程序调用和控制操作系统中的其他应用程序或系统功能。这个“VB程序中执行外部程序操作实例”压缩包提供了一些示例代码,帮助我们...

    AS3 Embed用法

    取而代之的是,通过`Embed`标签可以将外部资源嵌入到AS3项目中,这种方式更加灵活高效。本文将详细介绍AS3 Embed的具体用法及其应用场景。 #### 二、Embed 基本概念 `Embed`是AS3提供的一种机制,用于将外部资源...

    网页中嵌入windows media player示例

    这两个标签都是HTML中的对象插入元素,用于引入外部资源,如插件或者媒体播放器。下面是一个基本的嵌入代码示例: ```html Your browser does not support the object tag. ``` 在这个例子中...

    word嵌入到vb中form窗体中

    在VB(Visual Basic)开发环境中,我们经常需要与各种外部应用程序进行交互,比如Microsoft Word。在某些场景下,为了提供用户友好的界面或者实现特定功能,我们可能需要将Word文档嵌入到VB的Form窗体中。这允许用户...

    【个人收集】as3实用小例

    AS3的Loader类允许加载外部资源,如图片、SWF文件或文本。`Loading.txt`可能涵盖了加载过程、进度事件监听、内容类型检测以及安全策略等知识点。 6. **打开关联的文本文件**: AS3可以使用FileReference或File类...

    as3 flash 尋寶遊戲

    AS3的Loader类可以帮助加载外部资源,而使用位图缓存可以优化大量动态图形的性能。 9. **用户界面(UI)设计** 创建游戏菜单、提示信息、得分显示等UI元素,可以使用AS3的文本、按钮、影片剪辑等组件。理解如何...

    在资源文件中加入声音资源

    通过这种方式,声音资源可以直接嵌入到工程中,无需在运行时寻找外部文件。 综上所述,将声音资源集成到资源文件中,可以通过API调用或使用内置控件实现。这两种方法各有优缺点,API调用灵活但需要手动管理播放状态...

    AS2.0的MP3播放器

    AS2.0可能不直接支持这种功能,但可以通过JavaScript库(如jsmpeg)在Flash中嵌入JavaScript来实现。另一种方法是使用外部服务将MP3转换为波形图像,然后在AS2.0中显示。 5. **时间线和帧**:在Flash环境中,播放器...

    Flash as3 全网站

    3. **Flash元件与库**:Flash的元件库是存储可复用图形、按钮、动画等元素的地方,这些元件可以被嵌入到不同的场景或帧中,实现资源的共享和管理。 4. **Timeline与帧操作**:时间轴(Timeline)是Flash中控制动画...

    FLASH AS3 loading 源文件 源代码

    在Flash AS3编程中,加载(Loading)是关键功能之一,允许开发者动态地在应用程序运行时引入外部资源,如图像、SWF文件、XML或文本数据。本资源包含了一个名为"loading_as3"的示例项目,其中包括了loading_as3.fla...

    as3+xml相册源码

    此外,`album.html`可能还包含其他资源引用,如CSS样式表或外部JavaScript库。 `album.swf`是编译后的Flash电影文件,包含了所有的动画、图像和ActionScript代码。它是最终用户看到和交互的部分,浏览器通过`album....

    精彩编程与编程技巧-播放资源文件文件中的声音...

    在VB项目中,资源文件通常是通过资源编辑器预先编译并嵌入到可执行文件中。例如,可以将一个`.wav`文件通过资源编辑器添加到项目的资源文件(如`Resource.rc`),并在代码中引用这些资源。 #### 3.3 示例资源文件...

    AS3.0记忆小游戏源文件

    开发者可能使用形状、位图或导入的外部图像来创建这些元素,并通过ActionScript控制它们的显示和隐藏,实现游戏过程中的动态变化。 5. 音频处理:游戏中的背景音乐或音效(如note1.mp3至note5.mp3)为游戏增添了...

    flash cs5 与as3制作的仿雷电小游戏

    2. **图形资源**:使用Flash CS5的绘图工具或导入外部图像资源,创建游戏中的飞机模型、子弹、敌人、障碍物和背景等元素。 3. **动画制作**:通过时间轴和补间动画,制作飞机移动、开火、爆炸等动态效果。AS3代码...

    flex 创建as3例子

    当我们在Flex项目中需要使用外部功能或组件时,可以引入SWC(Shockwave Flash Component)库。`.swc`文件是预编译的ActionScript代码和资源的集合,类似于Java的JAR文件。在本例中,`people.swc`可能包含了一些预...

    Flex4流程设计的学习

    在Flex中,我们常常需要与外部资源打交道,比如图片、音频、视频和字体等。这些资源的管理方式之一就是通过嵌入(Embedding Assets)到应用程序中。 嵌入资源的优势在于: 1. 提高性能:与运行时加载资源相比,嵌入...

Global site tag (gtag.js) - Google Analytics