次の方法で共有


方法: 縦書きテキストを作成する

StringFormat オブジェクトを使用すると、テキストを水平方向ではなく垂直方向に描画するように指定できます。

次の例では、DirectionVertical オブジェクトのFormatFlags プロパティに値StringFormatを割り当てます。 そのStringFormatオブジェクトは、DrawString クラスのGraphics メソッドに渡されます。 DirectionVertical値は、StringFormatFlags列挙体のメンバーです。

次の図は、縦書きのテキストを示しています。

縦書きのフォント テキストを示すグラフィック。

string myText = "Vertical text";

FontFamily fontFamily = new FontFamily("Lucida Console");
Font font = new Font(
fontFamily,
   14,
   FontStyle.Regular,
   GraphicsUnit.Point);
PointF pointF = new PointF(40, 10);
StringFormat stringFormat = new StringFormat();
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));

stringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

e.Graphics.DrawString(myText, font, solidBrush, pointF, stringFormat);

Dim myText As String = "Vertical text"

Dim fontFamily As New FontFamily("Lucida Console")
Dim font As New Font( _
   fontFamily, _
   14, _
   FontStyle.Regular, _
   GraphicsUnit.Point)
Dim pointF As New PointF(40, 10)
Dim stringFormat As New StringFormat()
Dim solidBrush As New SolidBrush(Color.FromArgb(255, 0, 0, 255))

stringFormat.FormatFlags = StringFormatFlags.DirectionVertical

e.Graphics.DrawString(myText, font, solidBrush, pointF, stringFormat)

コードのコンパイル

  • 前の例は Windows フォームで使用できるように設計されており、PaintEventArgsのパラメーターであるePaintEventHandlerが必要です。

こちらも参照ください

  • 方法: GDI を使用してテキストを描画する