2010-11-02 60 views
12

XFL là tệp nguồn ADOBE FLASH (CS5) chưa nén mới, nó bao gồm các định nghĩa XML, hầu hết trong số chúng là rõ ràng nhưng không may, điều quan trọng là lạ.Ý nghĩa của các giá trị phi số trong định nghĩa cạnh của XFL là gì?

Nhìn các nguồn hiện có khác nhau, tôi có thể thấy định nghĩa EDGE hình dạng giống như:

<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"/> 

Làm một số xét nghiệm tôi có thể nói rằng:

! == move to position 
| == draw line from the position to the new position 
/== probably same like | 
[ == draw curve 
(== probably same like [ 

Nhưng những gì có nghĩa là các giá trị như S4 hoặc # BD9.4D? Điều chưa được chứng minh của tôi là các giá trị # có thể bằng cách nào đó đã mã hóa các số rất nhỏ. Tôi không có đầu mối nào có thể là S4.

Trả lời

12

!(x,y) moveTo

/(x,y)+ lineTo

|(x,y)+ lineTo

[(x1 y1 ex ey)+ curveTo (bậc hai)

](x1 y1 ex ey)+ curveTo (bậc hai)

((pBCPx pBCPy)? ; x1 y1 x2 y2 ex ey (({Q,q,P,p})? x y)+ curveTo (bắt đầu khối)

)(nBCPx nBCPy)? ; curveTo (khối cuối)

Sn lựa chọn (n = bitmask, 1: fillStyle0, 2: fillStyle1, 4: đột quỵ)

#aaaaaa.bb là một điểm cố định 32 bit số ký

+0

Cảm ơn, chỉ cần tự hỏi làm thế nào bạn biết điều đó? :) – Oldes

+0

btw .. bạn không biết những gì có nghĩa là các giá trị cubics là tốt? – Oldes

+0

tôi biết mọi thứ;) cubics (cũng như cờ lựa chọn) chỉ là gợi ý cho IDE (cubics chỉ có thể xuất hiện trong các thuộc tính cubics) –

0

Hm ... Tôi đã sai khi đoán # giá trị!

tôi đã phân tích với hình dạng được sản xuất và có thể nói, đó là cho giá trị ví dụ # BD9.4D phải là một mã hóa hệ thập lục phân ngớ ngẩn của số 3033,77. Tôi muốn biết, tại sao Adobe sử dụng một cái gì đó như thế trong mã mà nên được con người có thể đọc được?

EDIT: ở trên là sai, kết quả chính xác cho # BD9.4D là 3033,30078125

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

Cũng lưu ý, rằng con số như # 19F.2 là nhị phân # {} 00019F20

Theo các loại giá trị S4, chúng có thể chỉ là một số thông tin bổ sung cho trình chỉnh sửa FLASH vì khi tôi xóa chúng theo cách thủ công, tôi có thể tải nguồn và hình dạng giống nhau.

+2

họ sử dụng ký hiệu hex lạ cho các giá trị không thể được biểu diễn dưới dạng số thập phân thực mà không bị mất –

Các vấn đề liên quan