次の方法で共有


Graphics.MeasureString メソッド (String, Font)

指定した Font オブジェクトで描画した場合の、指定した文字列を計測します。

Overloads Public Function MeasureString( _
   ByVal text As String, _   ByVal font As Font _) As SizeF
[C#]
public SizeF MeasureString(stringtext,Fontfont);
[C++]
public: SizeF MeasureString(String* text,Font* font);
[JScript]
public function MeasureString(
   text : String,font : Font) : SizeF;

パラメータ

  • text
    計測する文字列。
  • font
    文字列のテキスト形式を定義する Font オブジェクト。

戻り値

このメソッドは、 text パラメータで指定された文字列のサイズをピクセル単位で表す SizeF 構造体を font パラメータで描画されたとおりに返します。

解説

MeasureString メソッドは、独立した文字列で使用するようにデザインされており、グリフの突出に対応するための少量の余白を文字列の前後に含めます。また、 DrawString メソッドはグリフのポイントを調整して表示品質を最適化するため、 MeasureString で報告されるよりも狭い範囲に文字列が表示される可能性があります。書式指定したテキストを実装する場合などに、レイアウト内の隣接する文字列に最適なメトリックを取得するには、 MeasureCharacterRanges メソッドを使用します。

使用例

[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードは次のアクションを実行します。

  • 計測する文字列を作成します。
  • フォント オブジェクトを作成し、Arial (16 ポイント) に設定します。
  • サイズ オブジェクトを作成し、そのオブジェクトとフォント オブジェクトを使用して、文字列のサイズを計測します。
  • 文字列の計測サイズを使用して赤い四角形を描画します。
  • 描画した四角形内に文字列を描画します。
 
Public Sub MeasureStringMin(e As PaintEventArgs)
' Set up string.
Dim measureString As String = "Measure String"
Dim stringFont As New Font("Arial", 16)
' Measure string.
Dim stringSize As New SizeF()
stringSize = e.Graphics.MeasureString(measureString, stringFont)
' Draw rectangle representing size of string.
e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0F, 0F, _
stringSize.Width, stringSize.Height)
' Draw string to screen.
e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
New PointF(0, 0))
End Sub
        
[C#] 
public void MeasureStringMin(PaintEventArgs e)
{
// Set up string.
string measureString = "Measure String";
Font stringFont = new Font("Arial", 16);
// Measure string.
SizeF stringSize = new SizeF();
stringSize = e.Graphics.MeasureString(measureString, stringFont);
// Draw rectangle representing size of string.
e.Graphics.DrawRectangle(
new Pen(Color.Red, 1),
0.0F, 0.0F, stringSize.Width, stringSize.Height);
// Draw string to screen.
e.Graphics.DrawString(
measureString,
stringFont,
Brushes.Black,
new PointF(0, 0));
}
        

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

Graphics クラス | Graphics メンバ | System.Drawing 名前空間 | Graphics.MeasureString オーバーロードの一覧