如何以编程方式将文本注入SWF文件

时间:2013-05-04 06:43:45

标签: flash

我在SWF中使用动态文本字段并从外部文本文件中读取它们的值,这样我就可以使用不同的文本反复使用相同的SWF“模板”。 如果以某种方式将SWF和变量文件以编程方式一起包装到一个SWF文件中会很棒,这样我就不需要为每个实例弄乱两个文件(或者注入文本并创建静态SWF实例,只要它没有人工干预完成,结果是一个SWF文件,任何解决方案都很好)。 能够在我的linux服务器上进行此处理将是一个真正的好处。

3 个答案:

答案 0 :(得分:2)

我有一个小的开源项目,允许您将文本插入SWF文件。也许它会满足你的需求。它旨在从GoogleDocs获取文本或存储在DropBox上的公共文件夹中的Word文件。本地文件也可以。

代码是用PHP编写的。你可以在这里看到它:

http://flaczkojad.blogspot.com/2012/05/introduction.html

一个很大的警告是它只处理TLF文本字段。

答案 1 :(得分:2)

您可以从页面传递参数 在对象标签

<object width="180" height="60" bgcolor="#FFFFFF"> 
<param name="movie" value="Your.swf" /> 
<param name="flashvars" value="text=YOUR TEXT" />
<embed width="180" height="60" bgcolor="#FFFFFF src="Your.swf" flashvars="text=YOUR TEXT" type="application/x-shockwave-flash" /> 
 </object>

&安培;如果您使用AS2,那么只需将其视为:

varName=text;

答案 2 :(得分:1)

如果您的外部文件是XML,则可以将其嵌入到以下类中:

public class Data 
{ 
    [Embed(source='data.xml', mimeType="application/octet-stream")]
    public static const Xml:Class; 
}

...然后实例化为:

var xml:XML = new XML(new Data.Xml);

或者,可以将xml粘贴到类中,例如:

public class Data
{

    public static var xml:XML = <root>
                                    <menu>
                                        <item>Waffles</item>
                                        <item>Belgian Waffles</item>
                                    </menu>
                                </root>;
}

在更高级别,似乎没有必要为每个模板重新编译新的SWF。

如果每个SWF都是唯一的,则可以在文件中设置文本。让单个SWF能够接受配置文件可以更好地重用模板。

还有一些方法在服务器端使用mxmlc编译器。这使您的服务器能够自动执行复杂的构建过程,从而产生多个SWF。