質問

XFLは、新しい圧縮されていないAdobe Flash(CS5)ソースファイルであり、XML定義から構成されています。それらのほとんどは明確ですが、残念ながら重要なものは奇妙です。

さまざまな既存のソースを見て、次のようなShapeのエッジの定義を見ることができます。

<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) へ引っ越す

/(x,y)+ リネート

|(x,y)+ リネート

[(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)? ; 曲線(立方端)

Sn 選択(n =ビットマスク、1:fillstyle0、2:fillstyle1、4:stroke)

#aaaaaa.bb 署名された固定点32ビット番号です

他のヒント

うーん...私は#値への推測が間違っていました!

生成された形状を分解しましたが、たとえばその値などと言うことができます #bd9.4d 数の愚かな16進コードでなければなりません 3033.77. 。知りたいのですが、なぜAdobeは人間が読みやすいコードでそのようなものを使用しているのですか?

編集:上記が間違っています、#BD9.4Dの正しい結果は3033.30078125です

>> (to integer! #{000BD94D}) / 256
== 3033.30078125

また、#19f.2のような数字はバイナリ#{00019F20}であることに注意してください

によると S4 値のタイプは、それらを手動で削除するとソースをロードでき、形状が同じであるため、フラッシュエディターの追加情報にすぎない可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top