--- /dev/null
+//
+// QuoteImage.swift
+// FolioReaderKit
+//
+// Created by Heberti Almeida on 8/31/16.
+// Copyright (c) 2016 Folio Reader. All rights reserved.
+//
+
+import UIKit
+
+/**
+ Defines a custom Quote image, can be a square `UIImage`, solid `UIColor` or `CAGradientLayer`.
+ */
+public struct QuoteImage {
+ public var image: UIImage!
+ public var alpha: CGFloat!
+ public var textColor: UIColor!
+ public var backgroundColor: UIColor!
+
+ /**
+ Quote image from `UIImage`
+
+ - parameter image: An `UIImage` to be used as background.
+ - parameter alpha: The image opacity. Defaults to 1.
+ - parameter textColor: The color of quote text and custom logo. Defaults to white.
+ - parameter backgroundColor: The filter background color, if the image has a opacity this will appear. Defaults to white.
+
+ - returns: A newly initialized `QuoteImage` object.
+ */
+ public init(withImage image: UIImage, alpha: CGFloat = 1, textColor: UIColor = UIColor.white, backgroundColor: UIColor = UIColor.white) {
+ self.image = image
+ self.alpha = alpha
+ self.textColor = textColor
+ self.backgroundColor = backgroundColor
+ }
+
+ /**
+ Quote image from `CAGradientLayer`
+
+ - parameter gradient: A custom `CAGradientLayer` to make a gradient background.
+ - parameter alpha: The image opacity. Defaults to 1.
+ - parameter textColor: The color of quote text and custom logo. Defaults to white.
+ - parameter backgroundColor: The filter background color, if the image has a opacity this will appear. Defaults to white.
+
+ - returns: A newly initialized `QuoteImage` object.
+ */
+ public init(withGradient gradient: CAGradientLayer, alpha: CGFloat = 1, textColor: UIColor = UIColor.white, backgroundColor: UIColor = UIColor.white) {
+ let screenBounds = UIScreen.main.bounds
+ gradient.frame = CGRect(x: 0, y: 0, width: screenBounds.width, height: screenBounds.width)
+ self.image = UIImage.imageWithLayer(gradient)
+ self.alpha = alpha
+ self.textColor = textColor
+ self.backgroundColor = backgroundColor
+ }
+
+ /**
+ Quote image from `UIColor`
+
+ - parameter color: A custom `UIColor`
+ - parameter alpha: The image opacity. Defaults to 1.
+ - parameter textColor: The color of quote text and custom logo. Defaults to white.
+ - parameter backgroundColor: The filter background color, if the image has a opacity this will appear. Defaults to white.
+
+ - returns: A newly initialized `QuoteImage` object.
+ */
+ public init(withColor color: UIColor, alpha: CGFloat = 1, textColor: UIColor = UIColor.white, backgroundColor: UIColor = UIColor.white) {
+ self.image = UIImage.imageWithColor(color)
+ self.alpha = alpha
+ self.textColor = textColor
+ self.backgroundColor = backgroundColor
+ }
+}