Как нарисовать фиксированную строку на pictureBox с помощью C #? - PullRequest
0 голосов
/ 11 февраля 2012

Мне нужно нарисовать текст на изображении PictureBox (изображение в оттенках серого). Я получил несколько кодов. он работает, но перемещается с изображением при панорамировании и масштабировании и исчезает при изменении уровня окна.

            rect = pictureBox1.ClientRectangle;
            Graphics g = Graphics.FromImage(bmp);
            SolidBrush brush = new SolidBrush(Color.Green);
            Font f = new Font("Arial", 15);
            g.DrawString("Murugesan", f, brush, start);

Я хочу, чтобы текст находился в постоянном месте, и он никогда не исчезнет при изменении уровня окна. Кто-нибудь там, чтобы помочь мне.

1 Ответ

0 голосов
/ 11 февраля 2012

Вы должны нарисовать его на событии PictureBox OnPaint и использовать e.Graphics.

Возможно, у вас не будет упомянутых вами артефактов, если вы используете:

Graphics g = pictureBox.CreateGraphics();

Норисовать на мероприятии все еще лучше, чем это.

...