2009年12月18日金曜日

なんだって!!!

.netで色つきDrawStringとして、TextureBrushとMeasureCharacterRangeを使って版画形式(=プリントごっこ形式)で実現しようと思っていたけど、文字の左や上の部分が少し欠けるときがある。
さっぱりわからなかったが、
http://www.microsoft.com/japan/msdn/archive/community/gdn/ShowPost-24735.htm
や、

http://dobon.net/vb/dotnet/graphics/measurestring.htmlをみると、思わぬことが、、、
>>文字列を描画したときの大きさを取得するには、Graphics.MeasureStringメソッドを使います。しかしMeasureStringメソッドはグリフの突出に備えて前後に余白を入れますので、Graphics.DrawStringメソッドで文字列を描画したとき、これよりも通常は狭い範囲に表示されます。

なんだってーーー。文字の大きさをとろうとしただけで、表示位置が変わるの???
MeasureStringと描画に関係しているところは、、、


stringFormat.SetMeasurableCharacterRanges(characterRanges);


http://msdn.microsoft.com/ja-jp/library/system.drawing.stringformat.setmeasurablecharacterranges.aspx
これの例外条件が問題になってくるかも。


だけど、、マイクロソフトの掲示板の方、

exsample(e.Graphics, "WWWWWWWWWWWWWWW", new Font("Century", 32));
とやると、やっぱりずれる。難しいです。

2009年12月16日水曜日

DrawString

で、色がえをしようとして、版画(=プリントごっこ)のように、TextureBrushを使って、文字を書いてみたけどなんか文字がにじむ。
MeasureCharacterRangesを使って、インクを置く場所に、FillRectangleを使ってみたけど、、、
さらに工夫が居るのかな?

FillRectangleの長方形指定の部分に、RectangleFを指定しているが、これを、上下左右に0.5ドットずつ拡張してみようか?それとも
DrawRectangleで、幅1のペンで塗ってみようか?
ひょっとしたら、FillRectangleに指定したものが、RectangleFでは無くRectangleF.Round()したものだったりしたおちだとうれしいんだけど。

2009年12月13日日曜日

誤訳フィードバック

以下の機能を使ってコードを書いていたら、OverflowExceptionが出てしまいました。
http://msdn.microsoft.com/ja-jp/library/system.drawing.stringformat.setmeasurablecharacterranges(VS.80).aspx#
で、MSDNの解説を見ると、すごい制限がありました。まさか32文字以上を囲むとOverflowExceptionが出るのか?とどきどきしましたが、そうはならず。。。。
結局いつものMSDN誤訳じゃないかと。

で、画面の上の星マークをクリックして、こんな感じでフィードバックしてみました。
”OverflowExceptionの条件が間違っています。
「32 文字を超える範囲が設定されています。」となっていますが、英語版の「32個を超えるCharacterRangeが設定されています。」が正しいと思います。”

前、SQL Server 2005の解説で外部キー波及の解説間違いにフィードバックしたときには知らないうちに修正されていたので、今度も知らないうちに変わってくれるといいんだけれど。。。どうなることやら。

2009年12月1日火曜日

.netのシステムリソース監視

.netframeworkでシステムリソースを確認するのなら、
http://msdn.microsoft.com/ja-jp/library/system.diagnostics.performancecounter(VS.71).aspx
と、
http://msdn.microsoft.com/ja-jp/library/system.management.managementobjectsearcher(VS.71).aspx
ぐらいかな?

アンチウィルスソフト、そろそろ乗り換えようかな

http://www.microsoft.com/security_essentials/default.aspx
正式運用してから2ヶ月以上たってるのでもうそろそろいいかな?

2009年11月30日月曜日

特定のアプリだけ英語キーボードになる

WordとExcelとInternetExprorとVisual Studioは、英語キーボードになって、notepadや、サクラエディタでは、日本語キーボードになる。

英語キーボードの動きになったときには、ナチュラルインプットっていうのを片っ端からIMEに置き換えていけば、どのアプリも日本語キーボードとしてつかえるけど、ネットを探してみたら、いかが見付りました。
http://support.microsoft.com/kb/880629/ja
レジストリを触らなきゃいけないみたい。

2009年11月15日日曜日

画面回転

びっくりした。
Vistaでは、[Ctrl]+[Alt]+矢印で、画面が回転するんですね。[Ctrl]+[Alt]+↓で、画面が逆さになったときにはどうしたものかと思っちゃいました。

それはそうと、Vistaって、[ネットワークプロジェクタへの接続]ってありますが、ネットワークプロジェクタのサーバソフトって無いかな?とか、RDPのプロトコルを実装しているクラスライブラリがないかなぁ?