iPhone 剪辑图像与路径

标签 iphone quartz-graphics

我想用路径剪辑图像。在《Programming with Quartz》一书中,有一个关于如何绘制由矩形路径裁剪的圆的示例(第 37 页),还有一章关于使用现有图像作为模板的图像 mask (第 10 章)。但我仍然不确定如何使用路径剪辑现有图像。有没有例子或指针?

最佳答案

这是一个应该有效的示例,它将剪切区域设置为路径(在我的例子中,该路径是椭圆形,您可以使用矩形)。然后绘制将被剪切的图像。方法drawRect:在我的例子中是绘制UIView上下文的方法。


- (void)drawRect:(CGRect)rect {
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGMutablePathRef path = CGPathCreateMutable();
//or for e.g. CGPathAddRect(path, NULL, CGRectInset([self bounds], 10, 20));
    CGPathAddEllipseInRect(path, NULL, [self bounds]);
    CGContextAddPath(context, path);
    CGContextClip(context);
    CGPathRelease(path);
    [[UIImage imageNamed:@"GC.png"] drawInRect:[self bounds]];
}

关于iPhone 剪辑图像与路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2570653/

相关文章:

ios - 如何使 CAGradientLayer 遵循 CGPath

iphone - iPhone应用程序商店的开发人员名称错误

iphone - iOS - RSS 阅读器库?

ios - 如何将JSON数据放入ios中的UICollectionView中

iphone - 自定义分组表单元格

macos - 将屏幕的一部分镜像到外部显示器(在 OSX 中)

iphone - 从 iPhone 上的应用程序到服务器的已验证 channel

ios - GMSThreadException' 原因 : 'The API method must be called from the main thread'

objective-c - 调整大小时淡入 UIView 阴影

ios - 绘制时对 UIImage 应用变换