Signal-iOS/SignalMessaging/utils/UIImage+OWS.swift
2019-08-09 12:53:19 -07:00

26 lines
817 B
Swift

//
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
//
import Foundation
extension UIImage {
@objc
public func asTintedImage(color: UIColor) -> UIImage? {
let template = self.withRenderingMode(.alwaysTemplate)
let imageView = UIImageView(image: template)
imageView.tintColor = color
return imageView.renderAsImage(opaque: imageView.isOpaque, scale: UIScreen.main.scale)
}
@objc
public func withCornerRadius(_ cornerRadius: CGFloat) -> UIImage? {
let rect = CGRect(origin: CGPoint(x: 0, y: 0), size: size)
UIGraphicsBeginImageContextWithOptions(size, false, 1)
UIBezierPath(roundedRect: rect, cornerRadius: cornerRadius).addClip()
draw(in: rect)
return UIGraphicsGetImageFromCurrentImageContext()
}
}