These pages are written by only Japanese.

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

こんばんわ♪ 現在は5月5日(日)2時47分。 丑三つ時です。


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

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

2011年11月03日(木)

SWFEditor 0.48 をリリースしました

不具合修正のリリースです。

修正内容:

  • input をしない、または失敗した後に、setActionVariables を実行すると Seg.fault する不具合を修正しました。
  • libpng 1.40 対応。png_check_sig が削除されたので png_sig_cmp を使うようにしました。 (0.47 で出す予定が漏れていました。0.48 でリリースします)

近日予定:

  • replaceBitmapData の v8 対応
  • getBitmapData の実装(?) - getJpegData だと v8 対応が面倒じゃないかと。Li purgeUselessContents の不具合修正
  • replaceActionVariables の Buttonアクション対応

2011年11月08日(火)

SWFEditor 0.49 をリリースしました

replaceBitmapData の機能拡張です。
ExGame や Reel といった iPhone で Flash を表示するツールで起動処理を軽く出来ないか。という目論見で作りました。
第四引数($without_converting) で true を指定すると (SWFv8 以降の仕様に則り) PNG/GIF/JPEG を変換せずに DefineBitsJPEG2 の中に格納します。
携帯の Flash Player では表示できませんが、上記の形式の DefineBitsJPEG2 を解釈できる Flash Player であれば表示できるはずです。
ExGame に代表される HTML5 技術を用いた Flash Player は原理的に Lossless 形式を HTML5 が解釈できる画像形式に変換する必要があるはずで、PNG/GIF をそのまま渡す事が出来れば、その処理が軽くなるはずだと期待しています。
誰か試して貰えませんか?

近日予定:

  • convertBitmapDataToJpegTag (PNG,GIF,JPEGの画像ファイルを変換せずそのまま Jpegタグに埋める SWF8 以降の仕様に合わせた機能)
  • purgeUselessContents で画像からの変換で作成したボタンが機能しなくなる不具合を修正 (ボタンが参照する画像を誤って削ってしまい、副次的な作用でボタンイベントも動かなくなります)
  • replaceActionStrings の文字列書き換え対象にボタンアクション内の文字列も追加。

2011年11月09日(水)

SWFEditor 0.50 をリリースしました

convertBitmapDataToJpegTag:

convertBitmapDataToJpegTag を実装しました
  • SWF 内の Lossless 画像を PNG に変換して DefineBitsJPEG2 として格納し直します。
  • SWF をこの関数で変換すると Flash Lite の Player では表示出来なくなりますが、昨日の 0.49 リリースで説明したのと同じ原理で ExGame や Reel 等で、もしかしたら起動が早くなるかもしれません。
  • alphachannel premultiplied を考慮していません。半透明が意図しない表示になる場合はご連絡下さい。出来る限り対応します。
続き > SWF Lossless PNG 化

getEditString:

getEditString の不具合修正を入れました。thank you! > toshi
  • initial_text が入っていない時に seg.fault 発生する問題を修正しました
  • variable_name が先頭部分文字列一致で取得出来る不具合を修正しました (本来は完全文字列一致)

Windows 版:

Windows コマンドプロンプトで実行できます > php53swfed-0.50.zip
zip ファイルを伸長すると exe とサンプルコードが入っています。
SWF のダンプ
php swfed\swfdump.php swfed\colorformat.swf
SWF 内の Lossless 画像変換
php swfed\swfconvertbitmapdatatojpegtag.php swfed\colorformat.swf > t.swf
swfed 以下に色々なツールがあるので、お試し下さい
php_openal.dll は OpenAL runtime が無い環境では動作しないので、(zip 中の)php.ini でコメントアウトしました。

2011年11月11日(金)

PHP勉強会の発表資料出来ました

明日のPHP勉強会の発表資料出来ました。
PHP でバイナリ処理出来るよ。という話です。
あと倍位書きたいけれど 20 分の発表時間だと、
本当に出来るよという実感を共有する所までが限界かとも思いますが、
帰って実際に試してみようと思って貰えるのを目標に、説明を頑張ります。

2011年11月12日(土)

第57回PHP勉強会@東京

発表してきました。 発表の後、頭のスイッチが切れて懇親会はボーっとしてました。
やっぱり疲れてるかなぁ。

発表資料:


2011年11月16日(水)

SWF Lossless PNG 化

SWFEditor v0.50 で SWF Lossless の PNG 化メソッド(convertBitmapDataToJpegTag)を用意しましたが、 反応が薄いので、説明図を作ってみました。 ExGame や Reel に限らず、この手の HTML5 技術を利用した JavaScript 製 Flash Player を高速化出来るかもしれないので、
どなたか試せる環境がある方がいれば、実験をお願いしたいです。
特に(PNG,GIF 等の)Lossless系ビットマップ画像を多く含む SWF だと目に見えて効果が出るはずです。

実際のSWF:

参考:


2011年11月29日(火)

ファイルの途中に含まれるデータの形式を調べる

ファイルのデータ形式を推測する file というコマンドがありますが、ファイルの途中から始まっている場合には対応していません。(ヘルプを読んだ限りでは)
そこで、ファイルの先頭から1バイトずつずらして file コマンドを何度も呼ぶ事で、ファイルの途中に含まれるデータの形式を何通りか推測するツールを作りました。

exec_file.php:

<?php

$size_limit = 0x200;

if (($argc != 2) || (is_readable($argv[1]) === false)) {
    echo 'Usage: php exec_file.php <target file>'.PHP_EOL;
    exit (1); // failure                                                        
}
$data = file_get_contents($argv[1]);

$len = min($size_limit, strlen($data) - 1); // 1 = very short file (no magic)   
for ($i = 0; $i < $len; $i++) {
    $ret = exec_file_command(substr($data, $i));
    if ($ret === false) {
    echo 'failed to execute file command'.PHP_EOL;
        break;
    }
    if ($ret !== 'data') {
        printf('0x%04x: %s'.PHP_EOL, $i, $ret);
    }
}

exit (0); // success                                                            
function exec_file_command($data) {
    $descspec = array(array('pipe', 'r'), array('pipe', 'w'));
    $process = proc_open('file -b -', $descspec, $pipes);
    if (is_resource($process) === false) {
        return false; // NG                                                     
    }
    fwrite($pipes[0], $data);
    fclose($pipes[0]);
    $ret = stream_get_contents($pipes[1]);
    fclose($pipes[1]);
    return trim($ret);
}
結構、便利。

2011年11月30日(水)

SWFEditor 0.51 をリリースしました

不具合修正:

getPNGData, convertBitmapDataToJpegTag にて、パレット形式(format=3)の Lossless 画像から透明度情報が抜け落ちた PNG が生成される不具合を修正しました。
この不具合では透明のはずの場所が黒く表示されます。

これで、8 日分だよ〜。

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