使用DrawString更改String的颜色?

时间:2012-10-15 16:47:20

标签: vb.net winforms graphics drawstring

我在vb.net中,我正在尝试格式化打印文档。它在一个角落中的一个不可协商的属性我必须有一个黑色背景和白色文本的字符串。我正在尝试使用DrawString,我可以更改画笔颜色,但我还是没有看到改变BackColor。

有没有人知道这是否可能,或者我是否必须做一些稍微复杂的事情,比如分两步我画一个矩形并使其变黑,然后将带有白色画笔颜色的字符串放在它上面

如果有人可以提供帮助,请提前致谢。

    Dim Lgraph As Graphics = e.Graphics


    Dim rec As System.Drawing.Rectangle
    rec.X = 30
    rec.Y = 0
    rec.Width = 70
    rec.Height = 50

    Lgraph.DrawRectangle(Pens.Black, balls)

    Lgraph.DrawString(lblSku.Text.Substring(3, 4), New Font("Arial", 18, FontStyle.Regular), Brushes.Blue, rec)

这几乎是我想要的,但是,我想用特定颜色填充矩形,而Pens.Black只是使边框成为所选颜色。

1 个答案:

答案 0 :(得分:1)

我担心您必须分两步完成,首先着色矩形,然后将彩色文本添加到其中。 Graphics.DrawString方法不允许您在调用中创建或操纵矩形。 Luckilly他们确实允许你传递矩形,所以不应该太麻烦。