diff options
Diffstat (limited to 'platform/ios/src/UIImage+MGLAdditions.mm')
-rw-r--r-- | platform/ios/src/UIImage+MGLAdditions.mm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/platform/ios/src/UIImage+MGLAdditions.mm b/platform/ios/src/UIImage+MGLAdditions.mm index 5e28d18190..884f92e003 100644 --- a/platform/ios/src/UIImage+MGLAdditions.mm +++ b/platform/ios/src/UIImage+MGLAdditions.mm @@ -6,7 +6,7 @@ - (nullable instancetype)initWithMGLStyleImage:(const mbgl::style::Image *)styleImage { - CGImageRef image = CGImageFromMGLPremultipliedImage(styleImage->getImage().clone()); + CGImageRef image = CGImageCreateWithMGLPremultipliedImage(styleImage->getImage().clone()); if (!image) { return nil; } @@ -22,6 +22,19 @@ return self; } +- (nullable instancetype)initWithMGLPremultipliedImage:(const mbgl::PremultipliedImage&&)mbglImage scale:(CGFloat)scale +{ + CGImageRef image = CGImageCreateWithMGLPremultipliedImage(mbglImage.clone()); + if (!image) { + return nil; + } + + self = [self initWithCGImage:image scale:scale orientation:UIImageOrientationUp]; + + CGImageRelease(image); + return self; +} + - (std::unique_ptr<mbgl::style::Image>)mgl_styleImageWithIdentifier:(NSString *)identifier { BOOL isTemplate = self.renderingMode == UIImageRenderingModeAlwaysTemplate; return std::make_unique<mbgl::style::Image>([identifier UTF8String], |