0

我已经创建了一个用于 MAC OS 程序的 Quartz 组合作为我界面的一部分。我依赖于这样一个事实,即当您进行合成精灵移动(在我的情况下为文本项目符号点)时,X 平面和 Y 平面都被限制为最小 -1 和最大 +1。

当我放大窗口/使窗口全屏时,我发现水平面(X 轴)保持不变,-1 是我最左边的点,+1 是我最右边的点。但是垂直平面(Y 轴)会发生变化,在全屏模式下它会从 -0.7 变为 +0.7。

这种缩放与我的计算不符。无论如何让应用程序将水平和垂直平面的比例保持为 -1 到 +1?或者有没有办法确定上限和下限?

感谢任何帮助/指针

4

1 回答 1

1

Quartz Composer 查看器 Y 限制通常为 -0.75 -> 0.75,但这只是纵横比的问题。X 限制总是 -1 -> 1,Y 取决于它们。

您可能希望动态分配自定义宽度和高度变量,捕获上下文边界大小。例如 :

double myWidth = context.bounds.size.width;
double myHeight = context.bounds.size.height;

其中“上下文”是您的查看器上下文对象。

如果您直接使用 QC 查看器:您应该使用 Rendering Destination Dimensions 补丁,它将为您提供宽度和高度。将高度除以 2,然后将结果乘以 -1 得到另一边。

于 2013-03-16T00:29:29.450 回答