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

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

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

Re[2]: 印刷文字列を枠で囲いたい


(過去ログ 110 を表示中)

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

■65533 / inTopicNo.1)  印刷文字列を枠で囲いたい
  
□投稿者/ ひろ (4回)-(2013/03/06(Wed) 09:09:24)

分類:[C#] 

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawString("SampleText", new Font("MS Pゴシック", 14, FontStyle.Bold), Brushes.Black, 150, 125);
}

上記のような印刷データで、文字列"SampleText"を枠で囲うにはどうしたらよいのでしょうか?
引用返信 編集キー/
■65536 / inTopicNo.2)  Re[1]: 印刷文字列を枠で囲いたい
□投稿者/ とっちゃん (55回)-(2013/03/06(Wed) 11:01:58)
とっちゃん さんの Web サイト
No65533 (ひろ さん) に返信
> private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
> {
> e.Graphics.DrawString("SampleText", new Font("MS Pゴシック", 14, FontStyle.Bold), Brushes.Black, 150, 125);
> }
>
> 上記のような印刷データで、文字列"SampleText"を枠で囲うにはどうしたらよいのでしょうか?

MeasureString() メソッドで文字列の大きさが取得できます。
これを基準にして、左右や上下に少し広げるなどでバランスをとって囲えばいいと思いますよ。


引用返信 編集キー/
■65538 / inTopicNo.3)  Re[2]: 印刷文字列を枠で囲いたい
□投稿者/ ひろ (6回)-(2013/03/06(Wed) 12:14:04)
> ■No65533 (ひろ さん) に返信
> MeasureString() メソッドで文字列の大きさが取得できます。
> これを基準にして、左右や上下に少し広げるなどでバランスをとって囲えばいいと思いますよ。

ありがとうございます!
アドバイスを元に、作成できました。


SizeF stringSize = printEvent.Graphics.MeasureString(strTitle, titleFont); // 文字列の大きさを取得.
Pen blackPen = new Pen(Color.Black, 2); //Penオブジェクトの作成(幅2の黒色)
printEvent.Graphics.DrawRectangle(blackPen, xpos, ypos, stringSize.Width, stringSize.Height);

解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -