diff --git a/ios/Elements/RNSVGImage.m b/ios/Elements/RNSVGImage.m index 9f3764a8..66b750f8 100644 --- a/ios/Elements/RNSVGImage.m +++ b/ios/Elements/RNSVGImage.m @@ -129,11 +129,8 @@ CGRect vbRect = CGRectMake(0, 0, CGRectGetWidth(renderRect), CGRectGetHeight(renderRect)); CGRect eRect = CGRectMake(canvasLeft, canvasTop, rectWidth, rectHeight); - CGAffineTransform transform = [RNSVGViewBox getTransform:vbRect eRect:eRect align:self.align meetOrSlice:self.meetOrSlice fromSymbol:NO]; + CGAffineTransform transform = [RNSVGViewBox getTransform:vbRect eRect:eRect align:self.align meetOrSlice:self.meetOrSlice]; - CGFloat dx = rectX + canvasLeft; - CGFloat dy = rectY + canvasTop; - renderRect = CGRectApplyAffineTransform(renderRect, CGAffineTransformMakeTranslation(-dx, -dy)); renderRect = CGRectApplyAffineTransform(renderRect, transform); [self clip:context]; @@ -150,7 +147,7 @@ CGFloat y = [self relativeOnHeight:self.y]; CGFloat width = [self relativeOnWidth:self.width]; CGFloat height = [self relativeOnHeight:self.height]; - return CGRectMake(x, y, x + width, y + height); + return CGRectMake(x, y, width, height); } - (CGPathRef)getPath:(CGContextRef)context diff --git a/ios/Elements/RNSVGSvgView.m b/ios/Elements/RNSVGSvgView.m index a8914901..46065fac 100644 --- a/ios/Elements/RNSVGSvgView.m +++ b/ios/Elements/RNSVGSvgView.m @@ -115,8 +115,7 @@ _viewBoxTransform = [RNSVGViewBox getTransform:CGRectMake(self.minX, self.minY, self.vbWidth, self.vbHeight) eRect:rect align:self.align - meetOrSlice:self.meetOrSlice - fromSymbol:NO]; + meetOrSlice:self.meetOrSlice]; CGContextConcatCTM(context, _viewBoxTransform); } diff --git a/ios/Elements/RNSVGSymbol.m b/ios/Elements/RNSVGSymbol.m index 305e2f72..d4fcfc34 100644 --- a/ios/Elements/RNSVGSymbol.m +++ b/ios/Elements/RNSVGSymbol.m @@ -85,8 +85,7 @@ CGAffineTransform viewBoxTransform = [RNSVGViewBox getTransform:CGRectMake(self.minX, self.minY, self.vbWidth, self.vbHeight) eRect:eRect align:self.align - meetOrSlice:self.meetOrSlice - fromSymbol:YES]; + meetOrSlice:self.meetOrSlice]; CGContextConcatCTM(context, viewBoxTransform); } diff --git a/ios/Utils/RNSVGViewBox.h b/ios/Utils/RNSVGViewBox.h index 9be8eefb..746ae79f 100644 --- a/ios/Utils/RNSVGViewBox.h +++ b/ios/Utils/RNSVGViewBox.h @@ -11,6 +11,6 @@ @interface RNSVGViewBox : NSObject -+ (CGAffineTransform)getTransform:(CGRect)vbRect eRect:(CGRect)eRect align:(NSString *)align meetOrSlice:(RNSVGVBMOS)meetOrSlice fromSymbol:(BOOL)fromSymbol; ++ (CGAffineTransform)getTransform:(CGRect)vbRect eRect:(CGRect)eRect align:(NSString *)align meetOrSlice:(RNSVGVBMOS)meetOrSlice; @end diff --git a/ios/Utils/RNSVGViewBox.m b/ios/Utils/RNSVGViewBox.m index dee14d8c..3c01208b 100644 --- a/ios/Utils/RNSVGViewBox.m +++ b/ios/Utils/RNSVGViewBox.m @@ -12,7 +12,7 @@ @implementation RNSVGViewBox -+ (CGAffineTransform)getTransform:(CGRect)vbRect eRect:(CGRect)eRect align:(NSString *)align meetOrSlice:(RNSVGVBMOS)meetOrSlice fromSymbol:(BOOL)fromSymbol ++ (CGAffineTransform)getTransform:(CGRect)vbRect eRect:(CGRect)eRect align:(NSString *)align meetOrSlice:(RNSVGVBMOS)meetOrSlice { // based on https://svgwg.org/svg2-draft/coords.html#ComputingAViewportsTransform