title_parttitle_parttitle_part
静岡県浜松市であれこれソフトを開発している A.K.I Software のブログです。日々の開発日記やサーバー・セキュリティ関連の話題なども掲載。
<< 2024/03 >>12345678910111213141516171819202122232425262728293031
《《《 ネットワーク機器の購入は Amazon で! 》》》
Powered by BLOM HTML5 で遊んでみよう
小さくも大きくも閉じたりもしません
10/11/12 17:21 / IT関連

Flash に代わるだろうと言われている HTML5 ですが、最近色々と始めています。
ブラウザ側の対応は今一つなので、いまひとつ待ち状態だったのですが、IE9 なども対応を始めていますので、そろそろ頃合いかな、という感じです。

まだ Web で HTML5 のリファレンスを見ている程度なのですが、HTML5 だと Canvas が注目されがちですが、Socket 通信などもできるようですので(正確には HTML5 から独立して Web Socket なる規格になったようですが) Socket 通信大好きな私的には非常におもしろそうです。

とは言えども、まずは Canvas から攻めるのが筋?だろうということで、Canvas 関連を見ています。

正直なところ、moveto やら lineto 辺りは Delphi そのまんまなので(というか、Delphi をやっている人は HTML5 の Canvas は非常に理解しやすいでしょう。簡単な置換でコードレベルでの置き換えができそうな勢いです。)

でも、Web で Canvas 。確かに使えると非常に楽なんですが、主だった処理は画像を draw したりする程度かと思っていたのですが、蓋を開けてみると、data プロパティ(プロパティと言うのかどうかは不明ですが・・・)があります。Delphi でいう ScanLine です。
これには驚きました。と言うのは、data はその Canvas が持つ画像の構造体に直接アクセスができる奴です。

重ね合わせ処理やら、各種エフェクト処理などを自前で行う為に必須とも言える項目です。(例えば輪郭抽出を行う場合は微分を使うのですが、x,y にどのカラーがあるか?を知る必要があります。これにアクセスできないとサーバーに一度データを渡してアプリケーションで加工して再取得という方法しかありません。)

試しに以前 Delphi で作成したアフィン変換のコードを JavaScript + Canvas に移植してみましたが、見事に動きます。

これは面白いです。
やろうと思えば Windows でいう Common Control と同じような動作をするライブラリを作成して、Web 上にアプリケーションをそっくりそのまま再現することも可能に思えます。
(現在のアプリケーション開発で行っているフォーム設計は CSS3 でデザインを行い、Canvas を使った Common Control を使って各種パーツを作成して、クライアント側で処理する必要な計算は JavaScript 、データの保存や Query などは AJAX や Web Socket を使ってサーバーとデータの送受信を行えば、完全に置き換えができそうです。)

取りあえず HTML5 の Canvas に対応しているブラウザと言えば Google Chrome なので、これで行っていますが、予想以上に動作も早いです。(iPad も対応しているようですが、onClick などが、Touch などに変わっているので、やる気無し。なんでこう統一感が無いんですかね>Apple)

しばらくの間は基礎ライブラリの作成だけで楽しめそうです。

[更新日付:2010/11/12 17:21:12]
トラックバックを見る(0)
Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+b955df453bbec00b4bad35dc8630d63355113270]
TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+b955df453bbec00b4bad35dc8630d63355113270]

記事へのコメント

コメントはありません

名前
コメントキー
 
コメントする時はキーを正確に入力して下さい
コメント
アドレスを含んだコメントはできません
© 2008-10 A.K.I Software all rights reserved.