RIAトピックス
リッチクライアント/RIAを主テーマに取り扱います。Flex、Ajax、AIR、Silverlight、JavaFX、etc。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【NobuMatsu Blog】WPF や Silverlight を使って Web でおしゃべり・・・しかし
http://nobumatsu.cocolog-nifty.com/blog/2007/10/wpf_silverlight_f191.html

以前、「初音ミクに対抗してWPFでおしゃべり!
という記事を紹介しました。そこでちらっと
「Silverlightでも出来ないのだろうか?」
というようなことを書いたと思いますが、
NobuMatsu Blogの「まっつん」さんが
我々の代わりに調べてくれました。

残念ながら、結果は「×」。
SilverlightにはこのためのAPIが無いらしいです。

というか、そもそも.NETの機能なんだから
クロスプラットフォームで動くSilverlightには
無理に決まってるだろう、と気づかなかった私。
我ながら情けない…。
まっつんさん、教えていただき有難うございました。



ヨウイチ
スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ

【Gizmodo Japan】寝ながらパソコンできる仕組みを、大学生が自作(動画)
http://www.gizmodo.jp/2007/09/post_2236.html

オレも欲しいッス、このギミック。
腰痛いから、起きてPC扱うとしんどくて…。
でも、そしたらロフトベッドにしなきゃならんのか。
それじゃあ意味無いんだよなぁ。



ヨウイチ

テーマ:PC周辺機器 - ジャンル:コンピュータ

【Shigeru-Nakagaki.com】Flex 2.0 Samples
http://shigeru-nakagaki.com/?content=flex2samples

Flex2のサンプルがいっぱいです。
技術的にはそんなに難しい機能は使っていない、
リファレンス的なページですが、
すべてソースが見られるになっているので
教科書代わりに閲覧させてもらうと良いかもしれません。



ヨウイチ

テーマ:プログラミング - ジャンル:コンピュータ

【てっく煮ブログ】PotrAs でチラシ文字
http://d.hatena.ne.jp/nitoyon/20071005/potras_pop

今回初めて知ったのですが、
ActionScriptのクラスライブラリを開発している
Spark project」というコミュニティがあるそうです。

上記記事では、
ベクタ変換ライブラリ「PotrAs」を利用して
String型の文字列をチラシ文字のような画像を
作成しています。

これを参考にさせていただいて、
私もFlex2で、動的に打ち込んだ文字列を
チラシ文字として表示するアプリを作ってみました。



…まぁ突貫工事だったので、色々イマイチですが、
その点はどうぞご勘弁を。ソースは以下。

― Pop.as ―
package {
    import com.nitoyon.potras.ClosedPathList;
    import com.nitoyon.potras.PotrAs;
    import flash.filters.DropShadowFilter;
    import mx.core.UIComponent;

    public class Pop extends UIComponent {
        public function Pop(str:String):void {
            var list:ClosedPathList = PotrAs.traceLetter(str, 60);

            graphics.lineStyle(14, 0xff0000);
            list.draw(graphics);

            graphics.lineStyle(8, 0xffffff);
            list.draw(graphics);

            graphics.lineStyle(4, 0xff0000);
            graphics.beginFill(0xff0000);
            list.draw(graphics);
            graphics.endFill();

            filters = [new DropShadowFilter(4, 45, 0x000080, 1, 0, 0)];
        }
    }
}

※てっく煮ブログさんのソースを
 ほとんどそのまま使わせてもらってます。
 少々異なるのは、本家ではSpriteクラスを継承していますが、
 今回はMXMLへのaddChild()がうまく行かなかったので
 UIComponentクラスを親クラスにしました。

― PopFont.mxml ―

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="320" height="130">
    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.utils.StringUtil;
            /**
             * 「作成ボタン」押下時の動作、フォントを描画します
             */
            private function submitPop():void
            {
                // 以前までにフォントが描かれている場合
                if(viewField.getChildren().length > 1)
                {
                    // フォントを除去
                    viewField.removeChildAt(1);
                }
                // 入力チェック
                if(input.text == null || StringUtil.trim(input.text).length == 0)
                {
                    Alert.show("文字を入力してください。");
                    return;
                }
                // フォントを描画領域に追加
                viewField.addChild(new Pop(input.text));
                // 初期化
                this.initialize();
            }
        ]]>
    </mx:Script>
    <mx:VBox id="viewField">
        <mx:HBox width="100%" height="30">
            <mx:Label text="入力:" color="white" fontWeight="bold"/>
            <mx:TextInput id="input" text="" />
            <mx:Button id="submit" label="作成" click="submitPop();"/>
        </mx:HBox>
        <!-- フォントを描画するとここに入る -->
    </mx:VBox>
</mx:Application>


※何もせずに2回目以降も文字入力すると
 作成したフォントがどんどん上重ねされてしまうので
 必要に応じてremoveChild()をするようにしています。

…実は「PotrAs」のソースを
きちんと読み込めていないので、理解不足の状態なんですが、
それでもなんとかここまではできました。
APIって素晴らしい!!



ヨウイチ

テーマ:プログラミング - ジャンル:コンピュータ

copyright © 2005 RIAトピックス all rights reserved.
Powered by FC2ブログ.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。