我有这样一段C#代码来绘制旋转文本:
Font font = new Font("Arial", 80, FontStyle.Bold);
int nWidth = pictureBox1.Image.Width;
int nHeight = pictureBox1.Image.Height;
Graphics g = Graphics.FromImage(pictureBox1.Image);
float w = nWidth / 2;
float h = nHeight / 2;
g.TranslateTransform(w, h);
g.RotateTransform(90);
PointF drawPoint = new PointF(w, h);
g.DrawString("Hello world", font, Brushes.White, drawPoint);
Image myImage=new Bitmap(pictureBox1.Image);
g.DrawImage(myImage, new Point(0, 0));
pictureBox1.Image = myImage;
pictureBox1.Refresh();
如果不进行旋转,文本将绘制在图像中心,但使用RotateTransform后,文本会超出图像的一半,并且旋转中心偏离。
如何仅围绕其中心旋转文本?而不影响文本在图像上的位置。