2013-04-16 295 views
1

我需要围绕UIImage的边框。 UIImage被添加到PDF文件。这是当前绘制图像的代码。围绕UIImage绘制边框

- (void) drawImage2 
{ 
    UIImage * demoImage = self.imageCopy; 
    NSData *jpegData = UIImageJPEGRepresentation(demoImage, 0.80); 
    CGDataProviderRef dp = CGDataProviderCreateWithCFData((CFDataRef)jpegData); 
    CGImageRef cgImage = CGImageCreateWithJPEGDataProvider(dp, NULL, true, kCGRenderingIntentDefault); 
    [[UIImage imageWithCGImage:cgImage] drawInRect:CGRectMake(513, 314, 135, 135)]; 
} 

对于我如何做到这一点的任何建议?我知道如何使用带有UIImageView的CALayers来做到这一点,但不知道这里,因为我没有视图。

回答

5
- (UIImage*)imageWithBorderFromImage:(UIImage*)source; 
{ 
    CGSize size = [source size]; 
    UIGraphicsBeginImageContext(size); 
    CGRect rect = CGRectMake(0, 0, size.width, size.height); 
    [source drawInRect:rect blendMode:kCGBlendModeNormal alpha:1.0]; 

    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextSetRGBStrokeColor(context, 1.0, 0.5, 1.0, 1.0); 
    CGContextStrokeRect(context, rect); 
    UIImage *testImg = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return testImg; 
} 
+2

这不回答这个问题。 OP想要围绕UIImage绘制边框,而不是UIImageView。 –

+0

@ 0x7fffffff:他将在设置图像后将图像添加到某个图像视图。所以,我的意思是,当他想要在imageview上显示该图像时,我的答案会很有用。 – Anil

+0

你应该考虑阅读整个问题,而不仅仅是标题。该图像将被添加到PDF而不是图像视图,并且您提供的代码用于OP明确表示他已经知道如何执行的操作。 –