gpt4 book ai didi

cocoa-touch - iPad (iOS 3.2) CGPathGetPathBoundingBox() 的替代方案

转载 作者:行者123 更新时间:2023-12-04 06:48:35 24 4
gpt4 key购买 nike

我正在尝试使用 QuartzCore 来渲染半复杂的文本/渐变/图像 UITableViewCell 复合 Material 。值得庆幸的是,Opacity 可以让我直观地构建 View ,然后吐出源代码以插入 cocoa touch 。问题是,Opacity 假设代码在 iOS 4 上运行,如果你想在 iPad 上绘制 Quartz View ,这是一个问题。

对我来说,有问题的方法是 CGPathGetPathBoundingBox ...有人介意给我指出一个合适的替代方法或解决方法吗?

如果您想了解一些背景信息(没有双关语),请执行以下操作:

transform = CGAffineTransformMakeRotation(1.571f);
tempPath = CGPathCreateMutable();
CGPathAddPath(tempPath, &transform, path);
pathBounds = CGPathGetPathBoundingBox(tempPath);
point = pathBounds.origin;
point2 = CGPointMake(CGRectGetMaxX(pathBounds), CGRectGetMinY(pathBounds));
transform = CGAffineTransformInvert(transform);

最佳答案

替代方法是 iterate on the points of the path并自己记下 anchor 的最左侧、最右侧、最上和最下坐标,然后根据这些数字计算原点和大小。

您应该将其包装在一个函数中,并将其命名为 MyPathGetPathBoundingBox ,并使用它直到您放弃对 iOS 3.x 的支持。这样可以轻松切换到 CGPathGetPathBoundingBox一旦你可以。

关于cocoa-touch - iPad (iOS 3.2) CGPathGetPathBoundingBox() 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3437614/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com