Xcode制作pdf,试图圆角

时间:2014-01-04 19:58:34

标签: objective-c xcode ipad pdf

我在iPad应用程序中制作pdf。现在我可以制作pdf但是想要添加带圆角边框的图片。例如,为了在简单视图项的边框上实现我想要的效果,我使用以下代码。

self.SaveButtonProp.layer.cornerRadius=8.0f;
self.SaveButtonProp.layer.masksToBounds=YES;
self.SaveButtonProp.layer.borderColor=[[UIColor blackColor]CGColor];
self.SaveButtonProp.layer.borderWidth= 1.0f;

使用pdf,我使用以下方法将带边框的图片添加到pdf。

CGContextRef currentContext = UIGraphicsGetCurrentContext();
UIImage * demoImage = [UIImage imageWithData : Image];
UIColor *borderColor = [UIColor blackColor];
CGRect rectFrame = CGRectMake(20, 125, 200, 200);
[demoImage drawInRect:rectFrame];
CGContextSetStrokeColorWithColor(currentContext, borderColor.CGColor);
CGContextSetLineWidth(currentContext, 2);
CGContextStrokeRect(currentContext, rectFrame);

我如何围绕角落?

由于

2 个答案:

答案 0 :(得分:0)

您可以使用方法将任何UIView / UIImageView转换为PDF NSData:

UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
    NSData *data = [self makePDFfromView:imageView];

方法:

- (NSData *)makePDFfromView:(UIView *)view
{
    NSMutableData *pdfData = [NSMutableData data];

    UIGraphicsBeginPDFContextToData(pdfData, view.bounds, nil);
    UIGraphicsBeginPDFPage();
    CGContextRef pdfContext = UIGraphicsGetCurrentContext();
    [view.layer renderInContext:pdfContext];
    UIGraphicsEndPDFContext();

    return pdfData;
}

也许您可以更改或使用此代码来帮助解决您的问题。

答案 1 :(得分:0)

绘图时可以设置剪贴蒙版。例如,创建具有圆角矩形形状的Bezier路径并将其作为剪切蒙版应用于图形上下文相对容易。随后绘制的所有内容都将被裁剪。

如果你想稍后删除剪贴蒙版(例如因为你有一个带圆角的图像但是跟随其他元素),你必须先保存图形状态,然后应用剪贴蒙版并恢复图形状态当你完成圆角时。

您可以看到实际代码与我认为您需要的内容非常接近: UIImage with rounded corners