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

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

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

Re[5]: 文字→画像を作成する際の色指定方法


(過去ログ 114 を表示中)

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

■67496 / inTopicNo.1)  文字→画像を作成する際の色指定方法
  
□投稿者/ くま (9回)-(2013/08/06(Tue) 17:39:56)

分類:[VB.NET/VB2005 以降] 

VS2010 VB.NETで開発しています。
下記まで出来ています。

「Brushes.Black」の部分を自分の指定した色にするには、どうすればいいでしょうか?


'表示する文字列
Dim str As String = TextBox1.Text

Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height)
Dim g As Graphics = Graphics.FromImage(canvas)
Dim fnt As New Font("font", 10)

'文字列を(0, 0)に描画
g.DrawString(str, fnt, Brushes.Black, 0, 0)
引用返信 編集キー/
■67498 / inTopicNo.2)  Re[1]: 文字→画像を作成する際の色指定方法
□投稿者/ 魔界の仮面弁士 (289回)-(2013/08/06(Tue) 17:54:20)
No67496 (くま さん) に返信
> 「Brushes.Black」の部分を自分の指定した色にするには、どうすればいいでしょうか?

こんな感じですかね。
「色」の部分に Color 型の変数を割り当ててみてください。


Dim br As Brush = New SolidBrush( 色 )


なお、Bitmap, Graphics, Font, Brush 等は IDisposable なので、
それらが自分で生成したオブジェクトである場合は、
不必要になった時点で Dispose するようにしましょう。
引用返信 編集キー/
■67501 / inTopicNo.3)  Re[2]: 文字→画像を作成する際の色指定方法
□投稿者/ 魔界の仮面弁士 (290回)-(2013/08/06(Tue) 18:43:24)
No67498 (魔界の仮面弁士) に追記
>>「Brushes.Black」の部分を自分の指定した色にするには、どうすればいいでしょうか?
> こんな感じですかね。
> 「色」の部分に Color 型の変数を割り当ててみてください。

タイトルを見落としていました。

色 → ブラシ の変換だけではなく、
文字列 → 色 の変換も必要だったのですね。


TextBox の内容から「色」に変換する方法としては、
たとえば、Color.FromName メソッドを使う手法があります。

"Red"、"Yellow"、"ActiveCaption"、"ButtonFace" といった『色名』を Color 化できます。


Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
 Dim s As String = TextBox1.Text
 Try
  Dim C As Color = Color.FromName(s)
  PictureBox1.BackColor = C
 Catch ex As Exception
  PictureBox1.ResetBackColor()
 End Try
End Sub


色名("Green", "Gold", "Transparent" など)だけではなく、
色番号("128, 128, 128" など)からも復元したい場合には、
ColorConverter を使うこともできます。

Try
 Dim cnv As New ColorConverter()
 Dim C As Color = DirectCast(cnv.ConvertFromString(s), Color)
 PictureBox1.BackColor = C
Catch ex As Exception
 PictureBox1.ResetBackColor()
End Try
引用返信 編集キー/
■67507 / inTopicNo.4)  Re[3]: 文字→画像を作成する際の色指定方法
□投稿者/ くま (10回)-(2013/08/07(Wed) 09:32:27)
No67501 (魔界の仮面弁士 さん) に返信
> ■No67498 (魔界の仮面弁士) に追記

さっそくの対応ありがとうございました。

Dim br As Brush = New SolidBrush( 色 )
で解決できました。

もう一つ質問です。

現在、ラベルをクリックするとカラーダイアログが立ち上がるようになっています。
これを、テキストボックスをクリックした時に立ちあがらせるには
どうすればいいでしょうか?
引用返信 編集キー/
■67509 / inTopicNo.5)  Re[4]: 文字→画像を作成する際の色指定方法
□投稿者/ shu (363回)-(2013/08/07(Wed) 09:49:02)
No67507 (くま さん) に返信

> もう一つ質問です。
>
> 現在、ラベルをクリックするとカラーダイアログが立ち上がるようになっています。
> これを、テキストボックスをクリックした時に立ちあがらせるには
> どうすればいいでしょうか?
ラベルのClickイベントで行っていることを
テキストボックスのClickイベントに記述するだけのような気がしますが
何が分からないのでしょう?
引用返信 編集キー/
■67510 / inTopicNo.6)  Re[5]: 文字→画像を作成する際の色指定方法
□投稿者/ くま (11回)-(2013/08/07(Wed) 09:52:26)
2013/08/07(Wed) 13:16:47 編集(投稿者)
2013/08/07(Wed) 13:12:37 編集(投稿者)
2013/08/07(Wed) 09:52:44 編集(投稿者)

No67509 (shu さん) に返信
> ■No67507 (くま さん) に返信
>
>>もう一つ質問です。
>>
>>現在、ラベルをクリックするとカラーダイアログが立ち上がるようになっています。
>>これを、テキストボックスをクリックした時に立ちあがらせるには
>>どうすればいいでしょうか?
> ラベルのClickイベントで行っていることを
> テキストボックスのClickイベントに記述するだけのような気がしますが
> 何が分からないのでしょう?

そうでした。ありがとうございます。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -