본문 바로가기
描く

方法: 描画テキストを配置する

by 엘리후 2021. 7. 3.

カスタム描画を実行するときに、フォームやコントロールを描画するテキストを中央揃えにすることがあります多くの場合。 描画されるテキストを簡単に合わせることができます、DrawStringまたはDrawTextメソッドを正しく書式設定オブジェクトを作成し、適切な書式指定フラグを設定します。

描画するために、GDI + (DrawString) を使用してテキストを中央揃え

使用して、StringFormatと適切なDrawString中央揃えのテキストを指定します。

C#

string text1 = "Use StringFormat and Rectangle objects to" + " center text in a rectangle."; using (Font font1 = new Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point)) { Rectangle rect1 = new Rectangle(10, 10, 130, 140); // Create a StringFormat object with the each line of text, and the block // of text centered on the page. StringFormat stringFormat = new StringFormat(); stringFormat.Alignment = StringAlignment.Center; stringFormat.LineAlignment = StringAlignment.Center; // Draw the text and the surrounding rectangle. e.Graphics.DrawString(text1, font1, Brushes.Blue, rect1, stringFormat); e.Graphics.DrawRectangle(Pens.Black, rect1); }

描画するために、GDI (DrawText) を使用してテキストを中央揃え

使用して、TextFormatFlags列挙体の垂直方向および水平方向には、適切なテキストを中央揃えするほかの折り返しDrawTextメソッド。

C#

string text2 = "Use TextFormatFlags and Rectangle objects to" + " center text in a rectangle."; using (Font font2 = new Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point)) { Rectangle rect2 = new Rectangle(150, 10, 130, 140); // Create a TextFormatFlags with word wrapping, horizontal center and // vertical center specified. TextFormatFlags flags = TextFormatFlags.HorizontalCenter | TextFormatFlags.VerticalCenter | TextFormatFlags.WordBreak; // Draw the text and the surrounding rectangle. TextRenderer.DrawText(e.Graphics, text2, font2, rect2, Color.Blue, flags); e.Graphics.DrawRectangle(Pens.Black, rect2); }

コードのコンパイル

上記のコード例は、Windows フォームで使用するために設計されていて、必要なPaintEventArgseはのパラメーターPaintEventHandlerします。

関連項目

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

フォントとテキストの使用

方法: フォント ファミリとフォントを作成します。

댓글