VB.NET:在内部绘制笔,而不是在外面

时间:2013-02-01 11:22:27

标签: vb.net path drawing

我想我曾经读过,可以设置一支笔,以便它可以画出内部"一条路,而不是外面。 我不希望自己的道路扩大。 具体来说,我想在我的路径周围画一个边框,边框不应该在路径之外。

这不幸地扩大了我的道路:

    Dim nPen As New Pen(Brushes.Black, 15)
    g.DrawPath(nPen, nPath)

如果有人理解我想做什么,我很乐意得到回复! 非常感谢你。

1 个答案:

答案 0 :(得分:1)

您正在寻找Pen.Alignment property。它可以具有以下值(source):

  • 居中:指定Pen对象在理论线上居中。
  • 插入:指定笔位于理论线的内侧。
  • Outset:指定Pen位于理论线的外侧。
  • 左:指定笔位于理论线的左侧。
  • 右:指定笔位于理论线的右侧。

您需要Inset值。

代码示例。您可以像这样使用它:

Using nPen As New Pen(Brushes.Black, 15) With {.Alignment = Drawing2D.PenAlignment.Inset}
    g.DrawPath(nPen, nPath)
End Using

(请注意,我使用using statement来确保处理对象。)