CS5中的FLA导入是否有XML文件的格式规范?

时间:2010-08-31 19:18:25

标签: xml flash flash-cs5 xfl

CS5允许您将FLA项目保存为一组XML文件,这些文件以某种格式编码矢量图形,例如:

<Edge cubics="!8809 4331(;8821,4327 8849,4316 8865,4311q8809 4331 8865 4311);" /> 

是否有某个格式规范解释这些条目的含义?

2 个答案:

答案 0 :(得分:3)

我还不知道确切含义,但看起来这是Flash API关于形状的其他信息。不需要此信息,您可以删除此行,仍然可以正常加载XFL。当您尝试再次编辑形状时,将再次添加立方体数据。它就像缓存信息。

你可以在这里看到:

<Edge fillStyle1="1" strokeStyle="1" edges="!2720 2720|0 2720!0 2720|0 0!0 0/2720 2720"/>
<Edge cubics="!0 2720(;0,2720 0,0 0,0q0 2720 0 0);"/>
<Edge cubics="!2720 2720(;2720,2720 0,2720 0,2720q2720 2720 0 2720);"/>
<Edge cubics="!0 0(;0,0 2720,2720 2720,2720q0 0 2720 2720);"/>

这是由3行和相关的附加立方体信息组成的三角形。

另请注意,边缘数据不必要地冗长。相同的形状可以描述为:

    ChangeStyle:
        Move: [2720 2720]
        FillStyle1: 1
        LineStyle: 1
    Line: -2720 0 0 -2720 2720 2720 

这一行是两行,一行是水平,一行是:

<Edge strokeStyle="1" edges="!2640 3020|2640 5240!1520 1740|4879 1740"/>
<Edge cubics="!1520 1740(;1520,1740 4879,1740 4879,1740q1520 1740 4879 1740);"/>

每次变形时数据都不会改变,所以它必须只是一些内部有用的东西。如果你想用一些外部工具(我想做)建立/修改形状数据,我建议删除这些行。

Fenomas是正确的,数字是缇,所以如果你想要像素值,你必须将它们除以20。

答案 1 :(得分:2)

还没有。 Adobe已经表示他们打算发布一个规范,但它似乎还没有发生。

不幸的是,我也不认为目前知道这些数字是什么意思(除非你搞清楚了!)。但我可以做一个有根据的猜测,数字本身可能是缇(在Flash中说的是像素的二十分之一,而不是排版中的一个点),所以如果将它们全部除以二十,你可能会有像素从......的左上角测量的偏移量。 ;)这可能足以破译该线的含义。

但是现在,我们能做的最好的事情就是解释一块特定的XFL;没有办法完全知道改变它是以什么方式合法或不合法。