我在 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,它会超出图像的一半,并且旋转中心会偏离。
如何仅围绕中心旋转文本?不影响图像上的文本位置。