【问题标题】:Is it possible to create a flash movie from only actionscript?是否可以仅从动作脚本创建 Flash 电影?
【发布时间】:2011-02-05 06:56:54
【问题描述】:

目前我主要是一名 PHP/Javascript/CSS/HTML 应用程序程序员。但我也想开始学习如何制作 Flash 电影。但是,我不想花钱买CS4。我可以仅从 Actionscript 3 创建 Flash 电影吗?或者有人会建议我直接跳到空中吗?所有做同样事情的不同 adobe 产品都让我感到困惑。

我只是不想跳进去然后发现我必须为 IDE 花费 900 美元。我真的只是想编码,而不必使用 IDE。

谢谢, 大都会

【问题讨论】:

    标签: actionscript-3 flash-cs4


    【解决方案1】:

    是的,如果您使用 Adob​​e 的 free Flex SDK,则可以仅使用 ActionScript 创建 .swf 文件。虽然是 Flex 编译器,但也可以用来编译纯 ActionScript 程序。

    Flex 是基于 Flash 构建的高级 UI 工具包,它可以更轻松地在 Flash 中构建具有复杂用户界面的应用程序。 Flex 应用程序是用 ActionScript 和类似 HTML 的 XML 格式(实际上是由编译器在后台转换为 ActionScript)编写的。 AIR 是一个平台,允许您构建在 Web 浏览器之外运行的独立 Flex 应用程序。我从来没有考虑过你是否制作了一个纯 ActionScript AIR 应用程序,但我猜不是。

    这是一个纯 ActionScript 中的 hello world 程序示例。将其保存在名为Test.as 的文件中,并使用命令行mxmlc Test.as 进行编译。

    package {
        import flash.display.Sprite;
        import flash.text.TextField;
    
        public class Test extends Sprite {
            public function Test():void {
                var tf:TextField = new TextField();
    
                tf.text = "Hello, world";
    
                addChild(tf);
            }
        }
    }
    

    FlashDevelop 是用于 Flex SDK 的 IDE。您仍然需要安装 Flex SDK 才能使用它。

    【讨论】:

    • 非常感谢 Tmdean 的帮助。那么,如果我使用 FlashDevelop,我还需要 flex SDK 吗?还是内置的?
    • 另外,我之前读过有关 adobes 产品的差异,但我只是想确保我做对了。 Actionscript 是 CS4 在非编码人员的 IDE 中使用的语言,AIR 是 actionscript + javascript 应用程序,可以作为桌面应用程序运行,Flex 是 actionscript + javascript 的编码器 IDE?他们让这一切变得非常混乱......
    【解决方案2】:

    我建议你看看 Haxe 社区。​​p>

    Haxe 是一种可以做很多事情的语言和编译器。它是完全开源的,您可以使用它创建 .swf 文件,而无需 CS4。

    社区由作者或 MTASC 驱动,它是第一个开源 ActionScript2 编译器。

    我相信,Haxe 现在与 AS3 和 Flex 完全兼容。

    查看http://haxe.org/

    我希望这会有所帮助 杰罗姆·瓦格纳

    【讨论】:

    • +1 与 ActionScript 3 相比,Haxe 是一种更好用的语言,而且 FlashDevelop 内部对它有很好的支持,所以没有理由不使用它。
    【解决方案3】:

    使用FlashDevelop :)

    这是与 tmdean 在 Main.as 中输入的代码相同的代码,就像您在 FlashDevelop 中创建新的 AS3 项目时一样。

    package 
    {
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.text.TextField;
    
        public class Main extends Sprite 
        {
    
            public function Main():void 
            {
                if (stage) init();
                else addEventListener(Event.ADDED_TO_STAGE, init);
            }
    
            private function init(e:Event = null):void 
            {
                removeEventListener(Event.ADDED_TO_STAGE, init);
                // entry point
    
                var tf:TextField = new TextField();
    
                tf.text = "Hello, world";
    
                addChild(tf);           
            }
    
        }
    
    }
    

    您确实需要一个 Java 1.6 JRE 才能使用 Flex SDK 进行编译,还需要一个 Adobe Flash Player (Debugger version) 来查看您编译的 SWF 文件(如果您运行的是 Windows,请获取显示 Windows Flash Player 10 Projector 内容调试器的文件)。

    有关为 AS3 开发配置 FlashDevelop 的详细信息,请访问FlashDevelop wiki

    【讨论】:

    • 这就是我所需要的吗?所以我可以只专注于 Actionscript,并使用 FlashDevelop,我会很好吗?
    • 嗨,Metropolis,抱歉无法及时回复,因为几个小时前这里是休眠时间 :) Tmdean 的 Hello World 示例运行良好,但我很快会使用相同代码的 FlashDevelop 示例更新此答案.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 2010-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    相关资源
    最近更新 更多