我的CGPath
形状像箭头,我正在我当前视图的CGContext
中绘制。我想生成箭头的微缩版本(缩略图),将其作为Image
添加到显示所有选定箭头的UITableView
。
我正在成功缩小整个上下文的图片,使箭头小于应有的值。理想情况下,我想将完整上下文的图像裁剪为箭头的边界。但是,我还没有成功。任何线索?谢谢你的帮助!
理想情况下,上面的缩略图会被裁剪为仅包含箭头 - 而不是完整的上下文。
我使用的代码是以下代码:
- (UIImage*) imageForObject:(id<GraphicalObject>) object
inRect:(CGRect)rect {
UIImage *image = [UIImage new];
CGRect objectBounds = [object objectBounds];
UIGraphicsBeginImageContext(self.view.frame.size);//objectBounds.size);
CGContextRef context =UIGraphicsGetCurrentContext();
[object drawInContext:context];
//doesn't work
CGContextClipToRect(context, objectBounds);
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
答案 0 :(得分:0)
名为CGRect
的{{1}}有两个组成部分:objectBounds
和origin
。为了将对象正确地绘制为缩略图,代码需要缩放图像(以获得正确的大小)并翻译图像(将原点移动到size
)。所以代码看起来像这样
{0,0}