首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GraphicsPath AddLine创建意外路径

GraphicsPath AddLine创建意外路径
EN

Stack Overflow用户
提问于 2016-01-29 05:45:40
回答 1查看 326关注 0票数 1

我正在尝试使用GraphicsPath绘制一个类似于“文件夹”的图像。

我创建路径的函数如下:

代码语言:javascript
复制
Public Function FolderRect(ByRef r As Rectangle) As System.Drawing.Drawing2D.GraphicsPath

    Dim p As New System.Drawing.Drawing2D.GraphicsPath

    Dim iTabWidth As Integer = 30
    Dim iTabHeight As Integer = 12

    With p
        Call p.AddLine(r.Left, r.Top, r.Left + iTabWidth, r.Top)
        Call p.AddLine(r.Left + iTabWidth, r.Top, r.Left + iTabWidth, r.Top + iTabHeight)
        Call p.AddLine(r.Left + iTabWidth, r.Top + iTabHeight, r.Right, r.Top + iTabHeight)
        Call p.AddLine(r.Right, r.Top + iTabHeight, r.Right, r.Bottom)
        Call p.AddLine(r.Right, r.Bottom, r.Left, r.Bottom)
        Call p.AddLine(r.Left, r.Bottom, r.Left, r.Top)

        Call p.CloseFigure()
    End With

    Return p

End Function

代码在我看来是正确的,但结果并不是我所期望的:

(我使用图像编辑器创建了“正确”版本)。

这可能是GraphicsPath中的一个错误?

这是PathPoints的样子:

这是"r“的样子:

EN

回答 1

Stack Overflow用户

发布于 2016-01-29 06:34:45

图形路径几乎肯定是正确的。可以通过查看图形路径的PathPoints属性来验证这一点。

在绘制图形路径时,可能存在一些舍入误差。尝试使路径与目标位图的大小相同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35072697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档