February 2009 - Posts

ブログ用 画像ユーティリティ ③ ドラッグ&ドロップ
26 February 09 11:57 AM | hiroyuk | 0 Comments   
ドラッグ&ドロップには ドロップされたファイルの読み込みのサンプル を利用します。まず、ドラッグ&ドロップが可能になるように、Windows1.xamlのWindow要素にAllowDrop=”True”と、PreviewDropおよびPreviewDragOverイベントハンドラを追加し、Window1.xaml.csでこのコールバックを実装します。 PreviewDragOverのコールバックでは、DragEvetArgsの内容をチェックして、ドラッグされたのが1つのファイルかどうかをチェックします。そしてドラッグされたのがディレクトリや複数ファイルのときはドロップできないようにします(DragDropEffect.None)。 Read More...
ブログ用 画像ユーティリティ ② コマンドライン引数の処理
23 February 09 10:00 AM | hiroyuk | 0 Comments   
コマンドライン引数の処理には Application.Startupイベント の記事を利用します。 App.xamlにスタートアップ メソッド名を追加して(app_Startup)、App.xaml.csでそのメソッドを実装します。VgaBitmapは後述する画像用のコンテナクラスです。内容は単にコマンドラインからファイル名を取得し、VgaBitmapをコンストラクトして、Saveメソッドを呼び出して保存し、this.Shutdown()を呼び出して終了するだけです。 最初はWindows1.xaml.csで同じことをやっていたのですが、ウィンドウを開いてすぐ閉じると、表示するWPFコンポーネントとBimapImageコンストラクションとの衝突があるのか、BitmapImage関連の例外を投げるときがあったので、App.xaml.csだけで処理することにしました。 Read More...
ブログ用 画像ユーティリティ ① 要件と戦略
19 February 09 12:53 PM | hiroyuk | 0 Comments   
ブログに写真を載せるとき、VGA程度にサイズを縮小したり、人の顔にモザイクをかけたりすることがよくあります。この程度のことにフォトレタッチ ソフトを買うのはもったいないし、フリーのソフトも複雑で使いにくいので、WPFでシンプルなアプリを書いてみることにしました。 要件は以下のとおりです。 実行ファイルに画像ファイルをドラッグ&ドロップすると(つまりコマンド オプションとしてファイル名を渡す)、VGAサイズの画像を生成・保存し、終了(表示なし)。 ダブルクリックで起動しウィンドウを開き、画像をウィンドウにドラッグ&ドロップすると、VGAサイズの画像を生成・表示。 Read More...
WPFでアンチエイリアシングを無効にする方法
16 February 09 09:55 AM | hiroyuk | 0 Comments   
WPFではデフォルトで ベクトル描画 のアンチエイリアシングが有効になっています。これによってジャギーのないエッジが描画できるのですが、ボケたようなエッジになるのを避けたい場合があります。これを無効にするには、 RenderOptions.EdgeMode="Aliased" を使います。デフォルトではEdgeMode=”NotSpecified”になっています。         EdgeMode="NotSpecified”             Read More...
Moonlight 1.0
13 February 09 11:02 AM | hiroyuk | 0 Comments   
Mono プロジェクトで進められてきた、Silverlight の UNIX + X11 版である Moonlight のバージョン1.0 が公開されました。ランタイム プラグインのダウンロードは こちら です。Firefox 2 と 3 で動作するそうです。32ビット版と64ビット版が用意されています。もちろんソースコードもダウンロードできます。 現在 Moonlight 2 の開発が始まっているとのことで、開発情報は こちら に公開されています。 Read More...
DirectWrite
12 February 09 10:02 AM | hiroyuk | 0 Comments   
DirectWriteは文字・テキストをレンダリングする新しい ネイティブAPI です。Direct2Dの上で動作するとき以下のようにハードウェア アクセラレーションされます(必ずしもDirect2Dを使わなければならないわけではありません、GDIとの相互運用が可能です)。ClearTypeを使って文字を滑らかに表示します。 ハードウェアでClearTypeフィルタとブレンドを実行 アプリケーションレベル ハードウェアキャッシング最適化が可能 グリフ描画時のWindows OSにおけるCPU使用を削減 Read More...
Filed under: ,
XAML Exporter Plug-In for Illustrator (Mac版)
10 February 09 11:14 AM | hiroyuk | 0 Comments   
Mike Swansonのブログ に Mac 版の Illustraotr 用 XAML エクスポーター プラグイン(テストバージョン 0.18)が公開されました。 Read More...
WPF Piexl Shader Effects Library
09 February 09 09:55 AM | hiroyuk | 0 Comments   
codeplex の WPF ピクセル シェーダ エフェクト ライブラリ のサンプルが充実しています。以下のような多数のエフェクトとトランジションのサンプルが動作するデモアプリが公開されています。 その様子は Channel9 のビデオ で見ることができますし、 Jaime Rodriguezのブログ でも紹介されています。 エフェクト BandedSwirl Bloom BrightExtract ColorKeyAlpha ColorTone ContrastAdjust DirectionalBlur Read More...
Direct2D
06 February 09 10:18 AM | hiroyuk | 0 Comments   
Windows 7では GDI に替わる 2D グラフィックスの新しい ネイティブ API として Direct2D が導入されます。Direct2D は Direct3D 10.1 上で動作します。つまり、Vista、Windows 7 であればハードウェアを問わずに動作します。 GPU の性能にも依存しますが、Direct2D の性能はGDI より高速で、プリミティブ単位のアンチエイリアシングも可能です。またGPUでレンダリングするので、GDI に比べ CPU の使用率も低くなります。   Read More...
Filed under: ,
WPF XAML Data Binding Cheat Sheet
04 February 09 10:14 AM | hiroyuk | 0 Comments   
Nir’s Software Companyのサイト に、XAML データバインディングのアンチョコがPDFでアップロードされています。データバインディングの書式ってけっこう複雑なので、役に立ちそうです。 Read More...
Direct3D 10 Level 9 フィーチャーレベル
02 February 09 12:57 PM | hiroyuk | 0 Comments   
前回 紹介したように、Direct3D 10.1 は Direct3D 10.1 のハードウェアがなくても動作します。Direct3D 9 のハードウェアの場合には以下の3種類のフィーチャーレベルが設定されています。生成されるデバイスに違いがあり、ソフトウェアで実行する割合とハードウェアで実行する割合が異なりますが(したがって性能も異なりますが)、どれも同じDirect3D 10.1のレンダリングを行います。膨大な数のCapsを3つに減らしたと考えてもよいかもしれません。 フィーチャーレベル Shader Read More...
Filed under: ,

Search

This Blog

DirectX 情報

Silverlight 情報

Windows 情報

WPF 情報

並列コンピューティング情報

著書

Syndication

Page view tracker