Как контролировать ориентацию Drawstring? - PullRequest
1 голос
/ 20 марта 2011

Я хочу нарисовать строку в качестве метки оси.Когда я рисую строку со следующим кодом, я могу прочитать ее «слева».Базовая строка текста находится на левой стороне.

StringFormat format = CustomGraphics.StringFormat(ContentAlignment.MiddleCenter);
format.FormatFlags |= StringFormatFlags.DirectionVertical;
e.Graphics.DrawString(this.yAxis.Title.Text, this.yAxis.Title.Font,
                      textBrush, e.Bounds, format);
format.FormatFlags &= ~StringFormatFlags.DirectionVertical;

Я хочу нарисовать вертикально, но повернуть ориентацию на 180 градусов.Как я могу это контролировать?Есть ли другой метод, который я должен использовать?

Ответы [ 2 ]

2 голосов
/ 20 марта 2011

Используйте Graphics.RotateTransform (), чтобы повернуть строку так, как вы хотите.Вам понадобятся TranslateTransform () и MeasureText (), чтобы получить правильную начальную точку.

1 голос
/ 20 марта 2011

Как повернуть метку в C #? содержит длинный и мощный метод рисования, изначально основанный на http://www.codeproject.com/KB/miscctrl/customtext.aspx

...