C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: Graphicsで文字列の一部色変換


(過去ログ 21 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■8926 / inTopicNo.1)  Graphicsで文字列の一部色変換
  
□投稿者/ どろー (1回)-(2007/10/14(Sun) 03:54:27)

分類:[.NET 全般] 

VS2005のC#でwindowsアプリ作成です

配列に例えば
test[1]には かきくけこ などと入っているとすると

「か」と「け」などを黒で残りを青で表示したい場合どのようにしたらきれいに表示されるのか
教えてください
一応pictureboxでDrowStringなどで試したら出来たのですが文字間隔が上手くできなくて
困っています。
イベントごとに色を毎回変えるのでpicturboxを使用したいのでどのようにしたらいいのか
おしえてください
おねがいします
引用返信 編集キー/
■8929 / inTopicNo.2)  Re[1]: Graphicsで文字列の一部色変換
□投稿者/ IIJIMAS (47回)-(2007/10/14(Sun) 11:01:39)
No8926 (どろー さん) に返信
> VS2005のC#でwindowsアプリ作成です
>
> 配列に例えば
> test[1]には かきくけこ などと入っているとすると
>
> 「か」と「け」などを黒で残りを青で表示したい場合どのようにしたらきれいに表示されるのか
> 教えてください
> 一応pictureboxでDrowStringなどで試したら出来たのですが文字間隔が上手くできなくて
> 困っています。
> イベントごとに色を毎回変えるのでpicturboxを使用したいのでどのようにしたらいいのか
> おしえてください
> おねがいします

MSDNライブラリの
CharacterRange 構造体
http://msdn2.microsoft.com/ja-jp/library/system.drawing.characterrange.aspx
のサンプルがご参考になると思います。

ただし、ここで使用されている
StringFormat.SetMeasurableCharacterRanges メソッド
http://msdn2.microsoft.com/ja-jp/library/system.drawing.stringformat.setmeasurablecharacterranges(VS.80).aspx
はこのリンク先ページの「例外」に記述のあるとおり(ちょっと記述が正確でないのですが)「32個を超えるCharacterRange」を指定するとOverflowExceptionが発生しますので、ご注意願います。

引用返信 編集キー/
■8931 / inTopicNo.3)  Re[1]: Graphicsで文字列の一部色変換
□投稿者/ @echo (13回)-(2007/10/14(Sun) 14:44:57)
No8926 (どろー さん) に返信
> 「か」と「け」などを黒で残りを青で表示したい場合どのようにしたらきれいに表示されるのか
> 教えてください

case by case ですが、TextFormatFlags.NoPadding を指定して
TextRenderer.MeasureText() で計算し、
TextRenderer.DrawText() で描画...ではどうでしょうか。

http://msdn2.microsoft.com/ja-jp/library/8wafk2kt(VS.80).aspx

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -