使用我的应用程序时,我遇到了一些绘制内容的问题:
我想知道为什么,回到Obj-c, -moveToPoint()
和-lineToPoint()
绘制的一切都没有问题,现在,与swift,一切似乎都一样,除了一个奇怪的边界出现在我的视图。让我解释一下:
想象你的任务是画一条从a(0,0)到B(10,10)的基本线
我们都知道如何在obj-c中这样做,但在swift中有一些对我来说是新的:
var path : NSBezierPath = NSBezierPath(rect: dirtyRect)
let color = NSColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 1.0)
color.set()
path.moveToPoint(NSPoint(x: 0,y: 0))
path.lineToPoint(NSPoint(x: 10,y: 10))
path.lineWidth = 5.0 //Makes the line 5px width, but it even
//creates an annoying border along the view
//Try it out, i can't figure out how to get rid of it
path.stroke()
您正在使用rect初始化bezier路径,因此当您调用path.stroke()时,rect是路径的一部分。你可以将路径初始化为NSBezierPath()
我建议您不要使用NSBezierPath
, NSColor
, NSPoint
,而应该分别使用更新后的UIBezierPath
, UIColor
, CGPoint
。