These pages are written by only Japanese.

Welcom to My Diary.com
最新の日記タイトル一覧カテゴリ別タイトル一覧トップへ戻る〜

こんにちは♪ 現在は5月18日(土)13時39分。 そろそろお仕事に戻る時間です


hns - 日記自動生成システム - Version 2.19.5 (色々 Fixed)

先月 2011年01月 来月
01
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Namazu for hns による簡易全文検索です。
詳細は 詳細指定/ヘルプをご参照下さい。
検索式:

2011年01月31日(月)

SWF Shape サイズ削減

Flash の SWF を parse して build するだけのプログラムを作ってみました。 ここから更にベクター情報をデフォルメするつもりですが、とりあえず、バイナリを構築し直すだけで少しサイズが減ったので報告。

プログラム:

サイズ比較:

処理前
magic=CWS  version=8  file_length=3166474
 rect=(0, 0)-(550, 300) (f_size=15)
処理後
magic=CWS  version=8  file_length=3166366
 rect=(0, 0)-(550, 300) (f_size=15)

理屈:

SWF DefineShape のベクター情報の値は、まず値を格納するのに必要なフィールド長があって、その後ろに実際の値が続きます。
典型例
+------------------------------+
| numBits |  deltaX  | deltaY  |
+------------------------------+
<4or5 bits><-numBits-><-numBits->
この numBits が実際に必要な値より大き目にとる事があるようです。
ギリギリのフィールド長でバイナリを作り直したら、少しだけサイズが減りました。

新たな課題:

  • ChaneStyleRecord の StateNewStyle があると表示が少し変。
  • これ、Style に追加でなく、Style を入れ替えてる気がする。
  • だとすると、さらに数バイト削れてラッキーですが。

続き:


これで、1 日分だよ〜。

タイトル一覧
カテゴリ分類
Database
JXTA
Java
XML
awm
bookmark
keyword
memo
news
research
Powered by hns-2.19.5, HyperNikkiSystem Project