UIImage
extension UIImage
This adds some simple image manipulation.
-
This is a “cascading” image fetcher. It first, sees if there is an asset with the name given, then, it looks in the SFSymbols, finally, returning the SFSymbols.nosign, if none found.
Declaration
Swift
class func assetOrSystemImage(name inName: String) -> UIImage?
Parameters
name
The name of the resource.
Return Value
A new image. May be nil, if none found.
-
This returns the RGB color (as a UIColor) of the pixel in the image, at the given point. It is restricted to 32-bit (RGBA/8-bit pixel) values. This was inspired by several of the answers in this StackOverflow Question. NOTE: This is unlikely to be highly performant!
Declaration
Swift
func getRGBColorOfThePixel(at inPoint: CGPoint) -> UIColor?
Parameters
at
The point in the image to sample (NOTE: Must be within image bounds, or nil is returned).
Return Value
A UIColor (or nil).
-
This allows an image to be resized, given a maximum dimension, and a scale will be determined to meet that dimension. If the image is currently smaller than the maximum size, it will not be scaled.
Declaration
Swift
func resized(toMaximumSize: CGFloat) -> UIImage?
Parameters
toMaximumSize
The maximum size, in either the X or Y axis, of the image, in pixels.
Return Value
A new image, with the given dimensions. May be nil, if there was an error.
-
This allows an image to be resized, given a maximum dimension, and a scale will be determined to meet that dimension.
Declaration
Swift
func resized(toScaleFactor inScaleFactor: CGFloat) -> UIImage?
Parameters
toScaleFactor
The scale of the resulting image, as a multiplier of the current size.
Return Value
A new image, with the given scale. May be nil, if there was an error.
-
This allows an image to be resized, given both a width and a height, or just one of the dimensions.
Declaration
Swift
func resized(toNewWidth inNewWidth: CGFloat? = nil, toNewHeight inNewHeight: CGFloat? = nil) -> UIImage?
Parameters
toNewWidth
The width (in pixels) of the desired image. If not provided, a scale will be determined from the toNewHeight parameter.
toNewHeight
The height (in pixels) of the desired image. If not provided, a scale will be determined from the toNewWidth parameter.
Return Value
A new image, with the given dimensions. May be nil, if no width or height was supplied, or if there was an error.