XFL是新的未压缩的ADOBE FLASH(CS5)源文件,它由XML定义组成,其中大多数是清晰的,但不幸的是,重要的是奇怪的。
查看各种现有资源,我可以看到shape的EDGE定义,例如:
<Edge strokeStyle="1" edges="!0 0S4|180 0"/>
<Edge strokeStyle="1" edges="!2720 2720S6|0 2720!0 2720|0 0!0 0/2720 2720"/>
<Edge fillStyle1="1" edges="!3532 1539.5S2[#BD9.4D #577.3C 2952.5 1756.5!2952.5 1756.5[#AF6.DA #4C6.1D 3584 1119!3584 1119|3532 1539.5"/>
做一些测试,我可以说:
! == move to position
| == draw line from the position to the new position
/ == probably same like |
[ == draw curve
( == probably same like [
但是,像 S4 或#BD9.4D 这样的值是什么意思呢?
我尚未证明的猜测是,#值可以某种方式编码非常小的数字。我不知道 S4 是什么。
最佳答案
!(x,y)
moveTo/(x,y)+
lineTo|(x,y)+
lineTo[(x1 y1 ex ey)+
curveTo(二次)](x1 y1 ex ey)+
curveTo(二次)((pBCPx pBCPy)? ; x1 y1 x2 y2 ex ey (({Q,q,P,p})? x y)+
curveTo(三次开始))(nBCPx nBCPy)? ;
curveTo(立方结束)Sn
选择(n = bitmask,1:fillStyle0,2:fillStyle1,4:stroke)#aaaaaa.bb
是一个带符号的定点32位数字