我正在尝试使用Core Graphics将矩形放置在UIImage的中心,大致如下图所示:
我感觉它没有在我发送的图片上进行绘制,而是在创建一个全新的图片。整个图像都变成了红色,矩形是黑色的。我希望黑色矩形和其他部分仍然与原始图片相同。我做错了什么?
这是我目前的代码:
func drawRectangleOnImage(image: UIImage) -> UIImage {
let imageSize = image.size
let scale: CGFloat = 0
UIGraphicsBeginImageContextWithOptions(imageSize, false, scale)
let context = UIGraphicsGetCurrentContext()
let rectangle = CGRect(x: 0, y: (imageSize.height/2) - 30, width: imageSize.width, height: 60)
CGContextSetFillColorWithColor(context, UIColor.blackColor().CGColor)
CGContextSetStrokeColorWithColor(context, UIColor.redColor().CGColor)
CGContextSetLineWidth(context, 5)
CGContextAddRect(context, rectangle)
CGContextDrawPath(context, .Fill)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage
}
我感觉它没有在我发送的图片上进行绘制,而是在创建一个全新的图片。整个图像都变成了红色,矩形是黑色的。我希望黑色矩形和其他部分仍然与原始图片相同。我做错了什么?