はじめに
UIImageのsizeを変更しようとすると、Cannot assign to property: 'size' is a get-only property
とエラーが発生します。対処法を調べてみると、UIImageを拡張することで対応しているコードが多いと思います。
ただ、Extensionは使わずにUIImageのsizeを変更したいと思う人もいるはずなので、今回はそんな人向けにコードを紹介します。
コード
ContentView.swift
func hogehoge() {
let image = UIImage(named: "画像名")
let scaledImageSize = CGSize(width: 100, height: 30)
let renderer = UIGraphicsImageRenderer(size: scaledImageSize)
let scaleImage = renderer.image { _ in
image.draw(in: CGRect(origin: .zero, size: scaledImageSize)
}
let imageView = UIImageView()
imageView.image = scaleImage
}
以上!