I have several rectangular images (in landscape and portrait mode) and want to draw them o开发者_运维知识库nto a transparent square image, so that all images became the same size without cropping them. How would I create a transparent UIImage and draw another on top?
Thanks for any hints.
- Create a bitmap graphic context with
CGBitmapContextCreate
. You'll need to determine what the size of the resulting composite image here. You can think of this as a sort of canvas. - Draw the images using
CGContextDrawImage
. This will draw images onto the same context. - Once you're done drawing all the images into the same context, create an image from that context with
CGBitmapContextCreateImage
. - Convert the Core Graphics image from step #3 into a UIImage with
[UIImage imageWithCGIImage:]
.
Code examples can be found here.
精彩评论