首页 文章

在视图调整大小时缩放在drawRect中完成的绘制

提问于
浏览
0

我还在学习Cocoa中自定义视图绘图的一些细节 . 我有一个自定义视图,我根据固定大小的其他地方的较大矩形中的对应点绘制线条和点 . 我希望在调整视图大小时使我的绘图比例增大或减小,但保持与较大的rect相同的纵横比 .

缩放绘图的最佳方法是什么?我需要以某种方式应用仿射变换吗?或者我应该画一个imageRef?在这种情况下,我不确定如何做以太一,或者如何使其与视图的大小和坐标来自的较大rect的宽高比保持同步 . 任何有关示例代码的提示或链接都非常感谢 .

1 回答

  • 1

    Concatenating affine transform听起来像是正确的解决方案 . 在两个维度中按相同因子缩放将保留绘图的纵横比,并且您可以使用简单除法来计算正确的因子(假设您不仅仅是从滑块或其他东西获取它) .

    如果您还没有,我强烈建议您阅读Cocoa Drawing GuideQuartz 2D Programming Guide . 有些东西的解释没有意义,在另一个中查找并尝试阅读该版本 .

相关问题