メイン

Program アーカイブ

2005年08月19日

おさわりしちゃうゾ


ここのところ Perl ばっかりいじってたのでフラストレーションが溜まって、衝動的に Visual C# のβ2 を入れてみました。
「うはー! サンプルで RSS 2.0 のパースやってるよ!」という感じで、スタートアップのコードサンプルに RSS のスクリーンセーバーがあるあたり、今時って感じです。
久々に MS の統合環境さわったんですが、ちょこちょこさわってもいかにも気持ちよさそう。大変よろしい感じです。

Delphi に親しんだ身としては、C# は癒し系のおねいさんみたいなものです(ホントかよ)。手元で使ってるメインの開発環境が Delphi6 だったりするので、そろそろ本格的に再勉強しなきゃいかんですね。

2005年09月01日

TEditor で 疑似 フリー カーソル を


アドベンチャーゲームシステム FreeLANGuex は、中のエディタに Delphi のエディタコンポーネントの TEditor を使用させて頂いています。

最近は例のアレをつくってる関係でよくシステムをさわっているのですが、Dos 時代の人間として Vz (Wz) の疑似フリーカーソルの動きがどうしても欲しくなってきたので、ちょこっと継承して拡張しました。
検索してもうまいこと引っかからなかったので、似たようなこと考えるヒトいるかなあ――と、メモ的に僕が改造した所の要所を記載しておきます。
間違えてたらごめんね。

  • 疑似フリーカーソルとは、上下スクロールをさせている場合に限り、カーソル位置が行末を超えても移動せずにそのままの位置をキープ。ただし、文字を入力した場合はエディタ的に行末に文字列が挿入されるような動きです。

うーむ、文章だとなかなか上手く動きが説明できないな。個人的にはすごく好きな動きなんですけどねー。

続きを読む "TEditor で 疑似 フリー カーソル を" »

2006年01月04日

C# をさわってみた。


pngtest.gif 冬休み! というワケで、このダウンロードした C# 2005Express Edition (今なら無料だよ) をいじくってます。
ヘルプを眺めていたら、アルファチャンネル付き png が読み込めそうな記述があったのでテストしてみました。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Imaging;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        Bitmap screenGraph, bgGraph, chrGraph;
        int mx, my;
        int fps = 0;
        int fpsTime = System.Environment.TickCount;
        int frameTime = System.Environment.TickCount;

        float[][] matrixItems ={ 
        new float[] {1, 0, 0, 0, 0},
        new float[] {0, 1, 0, 0, 0},
        new float[] {0, 0, 1, 0, 0},
        new float[] {0, 0, 0, 0.3f, 0}, 
        new float[] {0, 0, 0, 0, 1}};
        
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            mx = 100;
            my = 100;
            bgGraph = new Bitmap("bg.jpg");
            chrGraph = new Bitmap("chr.png");
            screenGraph = new Bitmap("bg.jpg");
            Application.Idle += new EventHandler(OnIdle);
        }
        private void OnIdle(object s, EventArgs e)
        {
            if (fpsTime + 1000 <= System.Environment.TickCount)
            {
                this.label1.Text = fps.ToString() + "FPS";
                fpsTime = System.Environment.TickCount;
                fps = 0;
            }
            if (frameTime + 16 <= System.Environment.TickCount)
            {
                fps++;
                frameTime = System.Environment.TickCount;
                Graphics g = Graphics.FromImage(screenGraph);
                g.DrawImage(bgGraph, 0, 0);
                g.DrawImage(chrGraph, new Rectangle(mx, my, chrGraph.Width - 1, chrGraph.Height - 1));
                ColorMatrix colorMatrix = new ColorMatrix(matrixItems);
                ImageAttributes imageAtt = new ImageAttributes();
                imageAtt.SetColorMatrix(colorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap);
                g.DrawImage(chrGraph,new Rectangle(0, 0, chrGraph.Width-1,chrGraph.Height-1),0.0f,0.0f,chrGraph.Width-1,chrGraph.Height-1,GraphicsUnit.Pixel,imageAtt);
                g.Dispose();
                this.BackgroundImage = screenGraph;
            }
            System.Threading.Thread.Sleep(1);
            this.Invalidate();
        }
        private void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            mx = e.X - (chrGraph.Width / 2);
            my = e.Y - (chrGraph.Height / 2);
        }

    }
}

ほえー、あっさり読めた。知らなかったー。行列使えば全体の透明度も設定できた。
TextRenderingHint 使うとやたらリッチなテキスト描画もできるのも最近知ったし、ウラシマ状態だなあ。

まあ上のは、べたべたのベタなコードだからスピードはあんまり出ないね。とはいえこれだけのコードでそれなりに動いてくれるんだから贅沢は言うまい。

あとループは delphi からの定石的に OnIdle 使ってるんだけど、いまいち自信薄です。

2006年02月09日

開発ツールで儲ける時代ではなくなってしまったけれど


がーん。
その上このニュースに対する反応 (の寒さ) が今の状態を如実に物語っていてさらにやるせなさ Up です。
もうとっくに開発ツールで儲ける時代ではなくなってしまったけれど、僕も C# に移行しつつあるけれど (ひどい)、 Borland には開発ツールを選択して欲しかったなあ。高校の頃バイトして買った TurboC++ がなかったら今の僕はなかったはずです。

なんというか、うまいことコミュニティの意見を汲み取れる所が買ってくれないかなあと思います。

2006年02月11日

ATOK 2006 を買った。


ATOK は年に一回メジャーバージョンアップするのがここ数年のお約束みたいで、今年もバージョンアップのお知らせが届きました。

さすがに毎年バージョンアップについて行くのは辛いので、僕はだいたい 2 年に一回、つまり 1 バージョンおいて購入しています。とはいえ、今更 IME に何かを期待することもほとんどなく、辞書が新しくなっていればそれでいいやぐらいの気持ちでバージョンアップしてたりします。
が、昨日届いた「ATOK 2006 電子辞書セット」、思っていたよりずいぶん使い勝手が上がっていたのでご報告します。具体的には下記の 2 点が気に入りました。

  • 推測候補モードがついた
  • 連携辞書が使いやすくなった

推測候補モードがついた

先頭の数文字を入力したら複数の変換候補が表示される推測変換は携帯電話でおなじみの入力方式ですが、このバージョンから ATOK でも「推測候補モード」として候補表示ができるようになりました。
Japanist なみとはいかないものの、これはかなり便利です ( 1 文字のものまで候補に挙がってくるのは頂けないけど)。

ただし、この推測変換、便利なんですが候補を選択するのにいちいち「↑」「↓」キーまで手を伸ばさなければいけないのが非常にめんどくさいです。キーカスタマイズできないかと調べているのですが、カスタマイズ用のインターフェイスが複雑に入り組んでいてなんだかよくわかりません。できないようにも見えるし……ううむ……。ちょっと情報収集中です。


あと、これは機能には関係ないのですが、「推測変換」について。
確かに便利なのですが、多用すると自分の文章で言葉を綴ってる感じが薄れてくるのでわりと注意が必要です。
また、細切れで推測変換を多用すると、辞書の学習効率が下がってしまうこともあるかと思います。ほかの IME が推測変換を実装しているのに対し、 ATOK がなかなか推測候補モードを実装しなかった理由もおそらくここら辺にあるんじゃないかと。今回のバージョンでも、デフォルト設定では推測候補モードに移行するのにキー入力が必要だったりします (オプションで変更可能)。
まあ変換はあれですね、機械に振り回されないように注意しましょう、という感じです。って僕が言っても説得力ないですか(^^;

連携辞書が使いやすくなった

辞書引きの結果をマウスで選択、コピーできるようになりました。むしろ今までできなかったのが不親切過ぎだったとも言えますが。
Office 連携ツールを入れると「IE で文字を選択→右クリックで辞書引き」なんてことが普通にできるようになったので、やっと辞書っぽく使えるようになりました。

辞書引きの便利さではまだまだ DDWin などの辞書引きソフトは必要ですが、ATOK 上での辞書引きもそれなりに使えるようになってきたのはやはりうれしいです。

今回のバージョンはなかなかいいよ。でもバージョン上げる?

という訳で今回の ATOK は今までの細かな不安を堅実に解消した、なかなかいいバージョンした。
さてそれでは、ATOK 2006 は手放しでお勧めできるかというと、ちょっとそこまではいきません。
というのも Windows Vista (仮称) が今年か来年に出るので、タイミング的にお勧めするのはちょっと考え込んじゃうところなのですね。

IME は OS にべったりくっついているので、Vista が出たらそれにあわせたバージョンの IME を買った方が当然よいです。となると、恐らく来年発売されるであろうバージョンを待ったほうがよいかもしれないなと思っちゃったり。

僕的に機能面では大いに満足していますので、それこそ前バージョン (2005) を使っていない限り上げる価値はあるかなと感じているのですが、これを今のタイミングで人にお勧めするとなると――うーん。
ここら辺、頻繁なバージョンアップのマイナス面があるような気がします。

しかし年に一回必ずバージョン上げるなら、どうせ IME は使い続けるので年間契約がほしくなりますね。セキュリティソフトみたいに定期的に語彙や郵便番号パターンアップデートとか、それはそれでおもしろいかもしれないです。つくる方は大変でしょうけど。

2006年02月22日

アイデアマスター雑感


ATOK2006 を買ったときに、あわせてジャストシステムの「アイデアマスター」を買っていました。
が、ちょっと「どうかなこれ?」と思う部分があったので未レビューでした。
先日ジャストシステムからソフトのアンケートの依頼が届いたので、返信用のメモを編集してこの blog にも載せておきます。

良かった点

快適に入力ができる

「アイデア入力 → エンター → アイデア入力 → エンター」とエンターキーでどんどんテキストノードを追加していき、あとでマウスでノードをまとめて整理する操作は若干慣れが必要なものの、非常に快適です。
入力ツールとしての基本が良くできていると思います。

豊富な図形データ

思っていた以上に豊富なノードの図形が用意されていたのは嬉しかったです。個人的に使用する部分の用途はほぼ満たせました。
また、図形のファイル形式が汎用的なもの (*.emf) でしたので、任意のものが追加できるのも良かったです (ここら辺はサポート外だと思いますが……)。

悪かった点

ジャストシステムの独自開発だと思って購入していた

これは僕の確認が足りない部分もありますが、このソフトはジャストシステムの独自開発と思い購入しました。
パッケージが届いた後、注意書きから UBITIZN 社が開発したソフトをベースに制作されたものだと知りました。

web 上でも注意深く見ないとわからない (動作環境の下部) ため、これは告知が足りていないと思います。
(このことを知っていたら予め UBITIZN 社のサイトで体験版を試してから購入の有無を判断していました。なぜ web の注意書き部分には UBITIZN 社 へのリンクがないのでしょう?)

インストールパスが独自

ジャストシステムの製品なのにインストール先の標準のパスが (\Genieware\IdeaMaster)となっていたため戸惑いました。JUSTSYSTEM でも UBITIZN でもなく Genieware とは……。

オフィスにツールバーデザインが似すぎている。その割に機能が違う

感覚的な問題だと思いますが、ツールバーのアイコンデザイン・配置がマイクロソフトのオフィスと「似すぎている」と感じています。ある程度デザインを似せる部分については UI の標準化という観点からかまわないと思うのですが、他社のソフトとほぼ同じデザインを取り入れてしまう姿勢には疑問です。しかも悪いことにバージョン情報など、「同じ絵」の割に Office とは機能が異なっているものもあり、余計に混乱を招きます。
ジャストシステムには一太郎というソフトがあるのですから、デザインはこちらにあわせて欲しかったと思います。

Unicodeに対応していない

今時のソフトとしてはなかなか厳しいところだと思います。

スタンダード版の出力ファイル形式がバイナリファイルだけ

標準の保存形式 (*.cvp) がバイナリファイルのため、本ソフト以外に保存したデータの使い道が無く、汎用性がありません。
それ以外の出力形式となるとプレゼン用の実行ファイルか画像ファイルの出力になってしまうため、将来的な使用に不安を感じます。

このソフトは名前通り、頭に浮かんだ「アイデア」のたたき台として使用するソフトだと思います。にもかかわらず、扱えるファイル形式に汎用性がないのはデジタルデータを扱う道具として使い勝手がよいとはとても言えません。
Pro 版ではある程度幅広い形式に対応している様なのですが、一万円近い価格帯のソフトで出力形式が独自のバイナリファイルしかなく、解決策が二万円近い Pro 版というのでは制限が大きすぎます。

保存形式は xml , 最低限テキスト情報はテキストファイルで簡易的な出力ができるようサポートして欲しかったです。
(※コピーアンドペーストでテキストデータを取り出すことはできます。アウトライン情報は消失しますが)

まとめ

今回は、「日本語にこなれているジャストシステムがアイデアプロセッサを開発した」という期待から購入したのですが、実際には他社のソフトをベースとした共同開発であり、率直に言って肩すかしな印象を受けました。

個人的にはいくつかのフロー書きの用途に使っていく予定ですが、使い続けるかどうかはちょっと微妙です。
今後の広がりはジャストシステムのサポート体制にかかっていると感じていますが、前述のようにベースとなっているソフトがあるため、大規模な改訂もあまり期待してはいけないのかなと感じています。
そもそも次のバージョンがあるかどうかが不安です。

他人にお勧めするか

スタンダード版についてはデータ形式の制限が大きすぎるため、率直に言っておすすめしません。
多少使い勝手は劣っても、同列のフリーまたはシェアウェアを選んだ方が安心感があります。フローは書けませんが、思いついたことをまとめるなら OneNote もよい選択肢です。

Pro 版ですが、フロー書きや共同作業を目的に 2 万円近い価格をだして購入するのなら Visio で統一した方がよいでしょう。
本作をベースに基礎的な仕事のフローを任せてしまうのは不安が残ります。
それなら Office の共有機能を使うなり GroupBoard を使うなりしたほうが安心でしょう。

Visio に足りないもの (快適な入力) に魅力を感じて購入するならまた別ですが、それだけのために二万円近い値段を出して(おまけに描画機能が劣る) このソフトを買うとなるとなかなかその人数は多くないと思います。
だいたいアイデアの入力にそのぐらい価値を感じるなら、思い切ってタブレットPC と OneNote 買った方が良さそうに思います。

うーむ

こんな感じで全体的に辛口なのですが、うーん、決して安いソフトではないのでこのぐらいは言っていいかなあと。体験版でもあればよかったのですがねえ。
あとはやっぱり、ジャストの独自開発と思いこんでいたので、そうでなかったという落胆がありました(こういうソフトこそ独自開発するべきだろうと!)。これは全くもって僕の失敗ですが……あぁ……もうちょっとちゃんとニュースソースに目を通していれば良かった。

2006年10月24日

XNA Game Studio Express Beta 2


表題のみという感じですが、XNA Team Blog によると近いうちに XNA Game Studio Express Beta 2 がリリースされるそうです。

Announcing XNA Game Studio Express Beta 2
http://blogs.msdn.com/xna/archive/2006/10/23/announcing-xna-game-studio-express-beta-2.aspx

たのしみ!

About Program

ブログ「Flagyx.blog」のカテゴリ「Program」に投稿されたすべてのエントリのアーカイブのページです。新しい順番に並んでいます。

前のカテゴリはMyselfです。

次のカテゴリはWebです。

他にも多くのエントリがあります。メインページアーカイブページも見てください。

Powered by
Movable Type