2013年7月19日金曜日

NetWalkerでgraffitiっぽいの

HandspringのVisorを使っていたときは、graffitiという手書き入力を利用していました。
NetWalkerでgraffitiっぽい手書き入力ってできるとよいなと思い、wxPythonでテストしてみた。
サクサクと認識してくれる。これでソフトウェアキーボードを作れたらよいのに。
Linux上のwxPythonで、ほかのアプリケーションへキー入力を送る方法が分からない。




2013年7月13日土曜日

イメージビューアImageViewerの修正

スクリプトを修正すると、新しいバグが生じたりしています。
ユーザーが自分自身なので、そのつど修正しながら楽しんでいます。
よけいな画面の再描画を減らすことで、画面のちらつきを減らしています。

また新しく、Python Imaging Library (PIL)を使ってみました。
こちらでアンチエイリアスをかけて画像を縮小したら綺麗になるかと思ったわけです。
NetWalker上でもimport Imageとしても問題なく、PILはすでに動くようでしたので、使ってみました。

Windows上では、 PIL 1.1.7をインストールしました。

あたらしく、設定ファイルにQualityのスイッチをつけました。0-5の数字を指定します。
0: wxPythonのScaleでwx.IMAGE_QUALITY_NORMALを指定しています。
1: PILのresizeで Image.NEARESTを指定しています。
2: PILのresizeで Image.BILINEARを指定しています。
3: PILのresizeで Image.BICUBICを指定しています。
4: PILのresizeで Image.ANTIALIASを指定しています。
5: wxPythonのScaleでwx.IMAGE_QUALITY_HIGHを指定しています。

効果を見るためにキーボードの0-5を押すことでスイッチできるようにしてみました。
しかし、NetWalkerで3以上を指定すると、処理が重過ぎるためかまともに動きません。
じっくりまって現れる画像は、たしかに綺麗になっているような気はしますが、
実用的な速度ではないですね。
結局、0番のサクサク感を選ぶのでした。

5番を選ぶと、だいぶ再描画処理に時間がかかるので注意です。


2013年7月3日水曜日

imageViewerを修正

imageViewerで画像を見ていると、画像切り替え時に白くフラッシュする感じだったので、それを抑えるように調整してみました。結局、MemoryDCに描画して、PaintDCに送っていたのだけど、ちょくせつPaintDCに描画することにしてみました。ついでに、画像の向きをスクリーンにあわせて自動回転するスイッチをAキーおよび、ストロークでトグルできるようにしました。ストロークは、1-0-3、または3-0-1。 NetWalker用、Windows用のどちらも修正しました。