12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- import UIKit
- public extension UIImage {
- func scaledImage(_ scale: CGFloat) -> UIImage? {
- let outputSize = size * scale
- let renderer = UIGraphicsImageRenderer(size: outputSize)
- return renderer.image(actions: {_ in })
- }
- func scaledImage(length: CGFloat, with quality: CGFloat) -> Data? {
- let edge = size.width > size.height ? size.height : size.width
- let outputSize = size * (length / edge)
- let renderer = UIGraphicsImageRenderer(size: outputSize)
- return renderer.jpegData(withCompressionQuality: quality) { _ in
- let content = UIGraphicsGetCurrentContext()
- content?.draw(cgImage!, in: CGRect(origin: CGPoint.zero, size: outputSize))
- }
- }
-
- func combineTo(image: UIImage, proportion: CGFloat, size: CGSize) {
- let renderer = UIGraphicsImageRenderer(size: size)
- renderer.image(actions: { context in
- context.currentImage.draw(in: CGRect.init(x: 0, y: 0, width: size.width * proportion, height: size.height))
- image.draw(in: CGRect.init(x: size.width * proportion, y: 0, width: size.width * (1 - proportion), height: size.height))
- })
- }
- }
- public extension UIImage {
- static var defaultAvatar: UIImage? {
- return UIImage(named: "defaultAvatar")
- }
- static var photoPlaceholder: UIImage? {
- return UIImage(named: "photoPlaceholder")
- }
- struct Navigation {
- public static var background: UIImage? {
- return UIImage(named: "navigation-background")?.resizableImage(withCapInsets: UIEdgeInsets.zero,
- resizingMode: .stretch)
- }
- public static var blackBackground: UIImage? {
- return UIImage(named: "navigation-background-black")?.resizableImage(withCapInsets: UIEdgeInsets.zero,
- resizingMode: .stretch)
- }
- public static var right: UIImage? {
- return UIImage(named: "navigation-right")?.resizableImage(withCapInsets: UIEdgeInsets.zero,
- resizingMode: .stretch)
- }
- public static var verticalPoints: UIImage? {
- return UIImage(named: "navigation-vertical-points")?.resizableImage(withCapInsets: UIEdgeInsets.zero,
- resizingMode: .stretch)
- }
- }
- struct PhotoDetail {
- public static var purchaseBackground: UIImage? {
- return UIImage(named: "purchase-background")?.resizableImage(withCapInsets: UIEdgeInsets.zero,
- resizingMode: .stretch)
- }
- }
- }
|