放在一个NSView
-
20-09-2019 - |
题
我有一个NSView用户能够在其中绘制的圈子。这些圈子里被储存作为一系列NSBezierPaths,并在drawRect:我的循环过阵列,并呼 -stroke
在每个道路。我怎么添加一个按钮来放大和缩小的NSView?只是改变边界的看法?
谢谢。
解决方案
其他提示
您可能还会发现这个信息:
https://developer.apple.com/library/content /qa/qa1346/_index.html
这文件中的代码,您可以添加一个“刻度”属性的图。
上面的答案并不适合我的场景,但让我找到了解决方案。
@Peter 的答案的更新链接很有帮助: 缩放单位正方形到大小
我找到了两种缩放的方法:
- 手动裁剪边界
- 缩放边界
scaleUnitSquareToSize
我创建了一个小型测试项目。这两种解决方案都可以在我的 GitHub 存储库中找到: 边界和框架裁剪和缩放
要了解边界与框架,请阅读这篇文章: 框架与边界之间的差异.
快速缩放代码:
let scaleSize = NSSize(width: 0.5, height: 0.5)
// 0.5 - Half the size
// 1.0 - No calling
// 2.0 - double the size , ... etc
myView?.scaleUnitSquare(to: scaleSize)
myView?.needsDisplay = true
不隶属于 StackOverflow