How to use UIGraphicsRendererFormat for UIGraphicsImageRenderer?

2.4k Views Asked by At

I need to use UIGraphicsRendererFormat for my UIGraphicsImageRenderer to change its scale but I can't find even one example online. This is my code, I appreciate any help:

//Based on documentation I know that I have to create an instance from
UIGraphicsImageRendererFormat and set its scale to my desired scale but how can I use it???

UIGraphicsImageRendererFormat * format = [UIGraphicsImageRendererFormat defaultFormat];
format.scale=1.0;
UIGraphicsImageRenderer*renderer = [[UIGraphicsImageRenderer alloc]initWithBounds:self.bgImageView.layer.bounds];

UIImage*image= [renderer imageWithActions:^(UIGraphicsImageRendererContext*_Nonnull myContext){
        [self.bgImageView.layer renderInContext: myContext.CGContext];
}];

Documentation : https://developer.apple.com/documentation/uikit/uigraphicsrendererformat?language=objc

1

There are 1 best solutions below

0
sambro On

Using this API might fix your issue:

   UIGraphicsImageRendererFormat * format = [UIGraphicsImageRendererFormat defaultFormat];
   format.scale=1.0;
   UIGraphicsImageRenderer *renderer = [[UIGraphicsImageRenderer alloc] initWithSize:CGSizeMake(200, 200) format: format];

See this doc