Title: Theory / Important / CS / Programming / Objective-C / Library / UIKit / Image
On every note of this deck, unless a note says otherwise:
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc

Typ: UIImage
Meaning: An object that manages imutable image(s) data in your app.

Question: What can you do with UIImage
Answer: Assign an image to a UIImageView object to display the image in your interface.
Answer2: Use an image to customize system controls such as buttons, sliders, and segmented controls.
Answer3: Draw an image directly into a view or other graphics context.
Answer4: Pass an image to other APIs that might require image data.

Question: What format is supported by UIImage?
Answer: All platform-native image formats, but prefers PNG and JPEG

Question: Which UIImage method to prefer to create an image from the app's main bundle
Answer: imageNamed:inBundle:compatibleWithTraitCollection: method (or the imageNamed: method)

Question: Which UIImage method to prefer to create an image from a file on disk
Answer: imageWithContentsOfFile: or initWithContentsOfFile:

Question: Which UIImage method to prefer to create a single UIImage object comprised of multiple sequential images
Answer: animatedImageWithImages:duration: and animatedImageNamed:duration: methods

Instruction: [UIImage
  imageNamed:name
  inBundle:bundle
  compatibleWithTraitCollection:traitCollection
]
Language: Objective-C
Returns: an image object using the named image asset that is compatible with the specified trait collection.

Instruction: [UIImage
  imageNamed:name
  inBundle:bundle
  withConfiguration:configuration
]
Language: Objective-C
Returns: an image object using the named image asset that is compatible with the specified configuration.

Variable: image.imageRenderedFormat
Meaning: The preferred image renderer format for the image.
Typ: UIGraphicsImageRendererFormat
Variables: UIImage image

Variable: image.images
Meaning: The complete array of image objects that compose the animation of an animated object. nil if not animated
Typ: NSArray<UIImage *> *
Variables: UIImage image

Variable: image.imageAsset
Meaning: The image asset (if any) for the image.
Typ: UIImageAsset
Variables: UIImage image

Variable: image.scale
Meaning: The scale factor of the image.
Variables: UIImage image

Variable: image.size
Meaning: The logical dimensions, in points, for the image.
Typ: CGSize
Variables: UIImage image

Variable: image.imageOrientation
Meaning: The orientation of the receiver’s image.
Typ: UIImageOrientation
Variables: UIImage image

Variable: image.resizingMode
Meaning: The resizing mode of the image.
Typ: UIImageResizingMode
Variables: UIImage image
Initialization: UIImageResizingModeTile

Variable: image.flipsForRightToLeftLayoutDirection
Meaning: whether the image flips in a right-to-left layout.
Variables: UIImage image

Variable: image.duration
Meaning: The time interval for displaying an animated image.
Typ: NSTimeInterval
Variables: UIImage image

Variable: image.capInsets
Meaning: The end-cap insets.
Typ: UIEdgeInsets
Variables: UIImage image

Variable: image.alignmentRectInsets
Meaning: The alignment metadata for positioning the image during layout.
Typ: UIEdgeInsets
Variables: UIImage image

Variable: image.symbolImage
Meaning: whether the image is a symbol.
Variables: UIImage image

Variable: image.configuration
Meaning: The configuration details for the image.
Typ: UIImageConfiguration
Variables: UIImage image

Variable: image.symbolConfiguration
Meaning: The configuration details for a symbol image.
Typ: UIImageSymbolConfiguration
Variables: UIImage image

Variable: image.traitCollection
Meaning: The trait collection that describes the current variant of the image.
Typ: UITraitCollection
Variables: UIImage image

Variable: image.hasBaseline
Meaning: whether the image has a defined baseline offset.
Variables: UIImage image

Variable: image.baselineOffsetFromBottom
Meaning: The position of the baseline relative to the bottom of the image. Positivte place the baseline up inside the image
Variables: UIImage image

Variable: image.renderingMode
Meaning: A setting that determines how the app renders an image.
Typ: UIImageRenderingMode
Variables: UIImage image

Instruction: [UIImage
  imageNamed:name
]
Returns: an image object from the specified named asset.

Instruction: [UIImage
  systemImageNamed:name
  withConfiguration:configuration
]
Returns: an image object that contains a system symbol image with the specified configuration.

Instruction: [UIImage
  systemImageNamed:name
  compatibleWithTraitCollection:traitCollection
]
Returns: an image object that contains a system symbol image appropriate for the specified traits.

Instruction: [UIImage
  systemImageNamed:name
]
Returns: an image object that contains a system symbol image.

Instruction: [UIImage
  imageWithContentsOfFile:path
]
[[UIImage alloc]
  initWithContentsOfFile:path
]
Returns: an image object by loading the image data from the file at the specified path.

Instruction: [UIImage
  imageWithData:data
]
[[UIImage alloc]
  initWithData:data
]
Returns: an image object that uses the specified image data

Instruction: [UIImage
  imageWithData:data
  scale:scale
]
Returns: an image object that uses the specified image data and scale factor.

Instruction: [UIImage
  imageWithCGImage:cgImage
  (scale:scale orientation:orientation)
]
[[UIImage alloc]
  initWithCGImage:cgImage
  (scale:scale orientation:orientation)
]
Returns: an image object from CGI (with the specified scale and orientation factors.)

Instruction: [UIImage
  imageWithCIImage:ciImage
]
[[UIImage alloc]
  initWithCIImage:ciImage
]
Returns: an image object that contains a Core Image object.

Instruction: [UIImage
  imageWithCIImage:ciImage
  scale:scale
  orientation:orientation
]
[[UIImage alloc]
  initWithCIImage:ciImage
  scale:scale
  orientation:orientation
]
Returns: an image object based on a Core Image object and the specified attributes.

Instruction: [UIImage
  animatedImageNamed:name
  duration:duration
]
Returns: This method loads a series of files by appending a series of numbers to the base file name provided in the name parameter.

Instruction: [UIImage
  animatedImageWithImages:images
  duration:duration
]
Returns: an animated image from an existing set of images.
Assuming: all have same size and space

Instruction: [UIImage
  animatedResizableImageNamed:name
  capInsets:capInsets
  (resizingMode:resizingMode)
  duration:duration
]
Returns: This method loads a series of files by appending a series of numbers to the base file name provided in the name parameter, with given insets, resizing mode and duration

Instruction: [image
  imageByPreparingThumbnailOfSize:size
]
Returns: a new thumbnail image at the specified size.
Variables: UIImage image

Instruction: [image
  imageByPreparingForDisplay:display
]
Returns: A new image, decoded for display
Variables: UIImage image

Instruction: [image
  prepareThumbnailOfSize:size
  completionHandler:completionHandler
]
Returns: a thumbnail image at the specified size asynchronously on a background thread.
Variables: UIImage image

Instruction: [image
  prepareForDisplayWithCompletionHandler:completionHandler
]
Returns: A new image for display, decoded asynchronously. Calling completionHandler when done
Variables: UIImage image

Instruction: [image
  drawAsPatternInRect:rect
]
Effect: Draws a tiled Quartz pattern using the receiver’s contents as the tile pattern.
Variables: UIImage image

Instruction: [image
  drawInRect:rect
  blendMode:blendMode
  alpha:alpha
]
Effect: Draws the entire image in the specified rectangle using the specified compositing options.
Variables: UIImage image

Instruction: [image
  drawInRect:rect
]
Effect: Draws the entire image in the specified rectangle, scaling it as necessary to fit.
Variables: UIImage image

Instruction: [image
  drawAtPoint:point
  blendMode:blendMode
  alpha:alpha
]
Effect: Draws the entire image at the specified point using the custom compositing options.
Variables: UIImage image

Instruction: [image
  drawAtPoint:point
]
Effect: Draws the image at the specified point in the current context.
Variables: UIImage image

Instruction: [image
  imageWithTintColor:color(
  renderingMode:renderingMode)
]
Returns: a new version of the image with a tint color( that uses the specified rendering mode).
Variables: UIImage image

Instruction: [image
  CGImage
]
Returns: The underlying Quartz image data.
Variables: UIImage image
Typ: CGImageRef

Instruction: [image
  imageWithBaselineOffsetFromBottom:baselineOffset
]
Returns: a new image with a baseline at the specified offset from the bottom of the image.
Variables: UIImage image

Instruction: [image
  imageWithBaseline
]
Returns: a copy of the current image object without any baseline information.
Availability
Variables: UIImage image

Instruction: [image
  resizableImageWithCapInsets:capInsets(
  resizingMode:resizingMode)
]
Returns: a new version of the image with the specified cap insets( and options.)
Variables: UIImage image

Instruction: [image
  imageWithAlignmentRectInsets:alignmentInsets
]
Returns: a new version of the image that uses the specified alignment insets.
Variables: UIImage image

Instruction: [image
  imageWithRenderingMode:renderingMode
]
Returns: a new version of the image that uses the specified rendering mode.
Variables: UIImage image

Instruction: [image
  imageWithHorizontallyFlippedOrientation
]
Returns: a new version of the image that’s a mirror of the original image.
Variables: UIImage image

Instruction: [image
  imageFlippedForRightToLeftLayoutDirection
]
Returns: a new version of the current image that flips horizontally when it’s in a right-to-left layout.
Variables: UIImage image

Instruction: [image
  imageByApplyingSymbolConfiguration:configuration
]
Returns: a new version of the current image, applying the specified configuration attributes on top of the current attributes.
Variables: UIImage image

Instruction: [image
  imageWithConfiguration:configuration
]
Returns: a new version of the current image, replacing the current configuration attributes with the specified attributes.
Variables: UIImage image

Variable: image.CGImage
Meaning: The underlying Quartz image data.
Typ: CGImageRef
Variables: UIImage image

Variable: image.CIImage
Meaning: The underlying Core Image data.
Typ: CIImage
Variables: UIImage image

Instruction: UIImageJPEGRepresentation(image, compressionQuality)
Returns: a data object that contains the specified image in JPEG format.
Variables: UIImage image

Instruction: UIImagePNGRepresentation(image)
Returns: a data object that contains the specified image in PNG format.
Variables: UIImage image

Constant: UIImage.checkmarkImage
Meaning: The standard image for a checkmark on a filled-circle background.
Typ: UIImage

Constant: UIImage.actionsImage
Meaning: The standard image for indicating user-initiated actions.
Typ: UIImage

Constant: UIImage addImage
Meaning: The standard image for indicating the addition of content.
Typ: UIImage

Constant: UIImage removeImage
Meaning: The standard image for indicating the removal of content.
Typ: UIImage

Constant: UIImage.strokedCheckmarkImage
Meaning: The standard image for a checkmark on a tinted circle with a white-stroked border.
Typ: UIImage

Typ: UIImageResizingMode
TypMeaning: specify the possible resizing modes for an image.
Variables: UIImage image
Value: UIImageResizingModeTile
The image is tiled when it is resized. In other words, the interior region of the original image will be repeated to fill in the interior region of the newly resized image.
Value2: UIImageResizingModeStretch
The image is stretched when it is resized. In other words, the interior region of the original image will be scaled to fill in the interior region of the newly resized imaged.
Meaning: The orientation of the receiver’s image.

Typ: UIImageRenderingMode
TypMeaning: the possible rendering modes for an image.
Value: UIImageRenderingModeAutomatic
Draw the image using the context’s default rendering mode.
Value2: UIImageRenderingModeAlwaysOriginal
Always draw the original image, without treating it as a template.
Value3: UIImageRenderingModeAlwaysTemplate
Always draw the image as a template image, ignoring its color information.

Typ: UIImageOrientation
TypMeaning: the intended display orientation for an image.
Value: UIImageOrientationUp
The original pixel data matches the image's intended display orientation.
Value2: UIImageOrientationDown
The image has been rotated 180° from the orientation of its original pixel data.
Value3: UIImageOrientation(Left|Right)
The image has been rotated 90° (counter|)clockwise from the orientation of its original pixel data.
Value4: UIImageOrientationUpMirrored
The image has been horizontally flipped from the orientation of its original pixel data.
Value5: UIImageOrientationDownMirrored
The image has been vertically flipped from the orientation of its original pixel data.
Value6: UIImageOrientationLeftMirrored
The image has been rotated 90° clockwise and flipped horizontally from the orientation of its original pixel data.
Value7: UIImageOrientationRightMirrored
The image has been rotated 90° counterclockwise and flipped horizontally from the orientation of its original pixel data.

Typ: UIImageResizingMode
TypMeaning: the possible resizing modes for an image.
Value: UIImageResizingModeTile
The image is tiled when it is resized. In other words, the interior region of the original image will be repeated to fill in the interior region of the newly resized image.
Value2: UIImageResizingModeStretch
The image is stretched when it is resized. In other words, the interior region of the original image will be scaled to fill in the interior region of the newly resized imaged.

Typ: CGImageRef
Meaning: A bitmap image or image mask.

Typ: UIImageConfiguration
Meaning: A configuration object that contains the traits that the system uses when selecting the current image variant

Variable: imageConfiguration.traitCollection
Meaning: The traits associated with the image configuration.
Typ: UITraitCollection
Variables: UIImageConfiguration imageConfiguration

Instruction: [imageConfiguration
  configurationByApplyingConfiguration:otherConfiguration
]
Returns: a configuration object that applies the specified configuration values on top of the current object's values.
Variables: UIImageConfiguration imageConfiguration
Typ: UITraitCollection

Instruction: [imageConfiguration
  configurationWithTraitCollection:traitCollection
]
Returns: a new configuration object that merges the current traits with the traits from the specified trait collection.
Variables: UIImageConfiguration imageConfiguration

Typ: UIImageSymbolConfiguration
TODO: content
Meaning: An object that contains the specific font, size, style, and weight attributes to apply to a symbol image.
Variables: UIImageConfiguration imageConfiguration

Typ: CIImage TODO whole CI prefix
Meaning: A representation of an image to be processed or produced by Core Image filters.
Variables: UIImageConfiguration imageConfiguration

Typ: UIImageAsset TODO
Meaning: A container for a collection of images that represent multiple ways of describing a single piece of artwork.
Variables: UIImageConfiguration imageConfiguration

Typ: UIGraphicsImageRendererFormat
Meaning: A set of drawing attributes that represents the configuration of an image renderer context.
Variables: UIImageConfiguration imageConfiguration
Subtype of: UIGraphicsRendererFormat

Variable: graphicsImageRenderedFormat.opaque
Meaning: whether the underlying Core Graphics context has an alpha channel.
Variables: UIGraphicsImageRendererFormat graphicsImageRenderedFormat

Variable: graphicsImageRenderedFormat.scale
Meaning: The display scale of the image renderer context.
Variables: UIGraphicsImageRendererFormat graphicsImageRenderedFormat

Variable: graphicsImageRenderedFormat.preferredRange
Meaning: The preferred color range of the image renderer context.
Typ: UIGraphicsImageRendererFormatRange
Variables: UIGraphicsImageRendererFormat graphicsImageRenderedFormat

Typ: UIGraphicsImageRendererFormatRange
TypMeaning: the color range of the image renderer context.
Value: UIGraphicsImageRendererFormatRangeAutomatic
The system automatically chooses the image renderer context’s pixel format according to the color range of its content
Value2: UIGraphicsImageRendererFormatRangeExtended
The image renderer context supports wide color.
Value3: UIGraphicsImageRendererFormatRangeStandard
The image renderer context doesn’t support extended colors.
Value4: UIGraphicsImageRendererFormatRangeUnspecified
The image renderer context doesn’t specify a color range.

Instruction: [UIGraphicsImageRendererFormat
  formatForTraitcollection:traitCollection
]
Returns: Creates the most suitable format for rendering on a device with the specified traits.

Name: image that defines regions where you can duplicate the underlying image data in an aesthetically pleasing way
Definition: a Stretchable Image
Page: https://developer.apple.com/documentation/uikit/uiimage?language=objc
Context: Objective-C