AS3转码器MIME类型

3
我想使用以下代码嵌入一个CSS文件:
[Embed(source = 'mystyle.css', mimeType = 'text/css')]
private var _css:Class;

但是'text/css'不是一个支持的转码器。有没有人能给我指一下转码器列表?
我只需要它读取纯文本,但'text/plain'也不可用。如果有其他方法可以欺骗as3做一些非常简单的事情,那就太感激了。
3个回答

8
据我所知,在AS3/Flash中支持的MIME类型与Flex中支持的相同。Flex支持以下格式:
  • application/octet-stream
  • application/x-font
  • application/x-font-truetype
  • application/x-shockwave-flash
  • audio/mpeg
  • image/gif
  • image/jpeg
  • image/png
  • image/svg
  • image/svg-xml
更多信息可以在此处找到。
如果不是这些特定的MIME类型,应该使用"application/octet-stream"。文件被嵌入为ByteArray对象,因此您需要自行解析它,但CSS作为纯文本将非常简单。根据您使用的CSS属性,您甚至可以使用StyleSheet类的parseCSS函数。

1
您也可以使用MXML:
<fx:String id="myText" source="./examples/myText.txt"/>

很遗憾,“source”属性不会出现在自动完成中,因此人们没有意识到该属性是可用的。无论如何,请将其键入,我想您会感到愉快。 眨眼。
但是要注意,如果使用开放的花括号和闭合的花括号,编译器可能会抱怨,因为它将尝试将其解释为数据绑定表达式。您需要使用sodius“\”转义大括号。因此,请将任何出现的{更改为\{
此外,以下是有关如何从嵌入式获取数据的更多信息。
像这样声明:
[Embed(source="mystyle.css", mimeType="application/octet-stream")]
private var MyCSS:Class;

像这样获取值:
var myCSS:String = new MyCSS();

-2

[Embed (source="vigsquare.pat", mimeType="application/octet-stream")] private var maker:Class;

[Embed (source="camera_para.dat", mimeType="application/octet-stream")] private var cam_params:Class;

flex2.compiler.media.DataTranscoder 不支持转码参数源

如何清除我的错误


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接