I'm trying to upload 256 x 256 images from my iOS app. I've resized an image to CGSize(width: 256, height: 256)
, but it gets uploaded as 768 x 768. This makes sense, because on my iPhone X, 1 point is 3 pixels.
This isn't consistent though. On some iPhones, 1 point is 2 pixels.
How do I figure out to use CGSize(width: 128, height: 128)
or CGSize(width: 86, height: 86)
?
The direct answer to your question is to use the scale
property of UIScreen
.
But you probably don't need that depending on how your image is created. Given your tags, it is likely you are using UIGraphicsBeginImageContextWithOptions
. Note its third parameter of scale
. If you pass 0
you get the device's scale. But in your case you want a scale of 1
.