You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/SignalMessaging/Loki/Identicon+ObjC.swift

20 lines
769 B
Swift

import IGIdenticon
@objc(LKIdenticon)
final class Identicon : NSObject {
@objc static func generateIcon(string: String, size: CGSize) -> UIImage {
let identicon = IGIdenticon.Identicon().icon(from: string, size: size)!
let rect = CGRect(origin: CGPoint.zero, size: identicon.size)
UIGraphicsBeginImageContextWithOptions(identicon.size, false, UIScreen.main.scale)
let context = UIGraphicsGetCurrentContext()!
context.setFillColor(UIColor.white.cgColor)
context.fill(rect)
context.draw(identicon.cgImage!, in: rect)
context.drawPath(using: CGPathDrawingMode.fill)
let result = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()
return result
}
}