diff --git a/ios/Text/RNSVGTSpan.m b/ios/Text/RNSVGTSpan.m index 5f6e6829..3dd8b08b 100644 --- a/ios/Text/RNSVGTSpan.m +++ b/ios/Text/RNSVGTSpan.m @@ -509,8 +509,8 @@ static double RNSVGTSpan_radToDeg = 180 / M_PI; double top = ascenderHeight; double totalHeight = top + bottom; double baselineShift = 0; - NSString *baselineShiftString = [self getBaselineShift]; - enum RNSVGAlignmentBaseline baseline = RNSVGAlignmentBaselineFromString([self getAlignmentBaseline]); + NSString *baselineShiftString = self.baselineShift; + enum RNSVGAlignmentBaseline baseline = RNSVGAlignmentBaselineFromString(self.alignmentBaseline); if (baseline != RNSVGAlignmentBaselineBaseline) { // TODO alignment-baseline, test / verify behavior // TODO get per glyph baselines from font baseline table, for high-precision alignment diff --git a/ios/Text/RNSVGText.h b/ios/Text/RNSVGText.h index 457fe950..548544b9 100644 --- a/ios/Text/RNSVGText.h +++ b/ios/Text/RNSVGText.h @@ -24,7 +24,5 @@ - (void)releaseCachedPath; - (CGPathRef)getGroupPath:(CGContextRef)context; - (CTFontRef)getFontFromContext; -- (NSString*) getAlignmentBaseline; -- (NSString*) getBaselineShift; @end diff --git a/ios/Text/RNSVGText.m b/ios/Text/RNSVGText.m index 21cec3c7..4aca896d 100644 --- a/ios/Text/RNSVGText.m +++ b/ios/Text/RNSVGText.m @@ -90,52 +90,54 @@ return root; } -- (NSString*) getAlignmentBaseline +- (NSString *)alignmentBaseline { - if (self.alignmentBaseline != nil) { - return self.alignmentBaseline; + if (_alignmentBaseline != nil) { + return _alignmentBaseline; } - UIView* parent = [self superview]; + + UIView* parent = self.superview; while (parent != nil) { if ([parent isKindOfClass:[RNSVGText class]]) { RNSVGText* node = (RNSVGText*)parent; NSString* baseline = node.alignmentBaseline; if (baseline != nil) { - self.alignmentBaseline = baseline; + _alignmentBaseline = baseline; return baseline; } } parent = [parent superview]; } - if (self.alignmentBaseline == nil) { - self.alignmentBaseline = RNSVGAlignmentBaselineStrings[0]; + + if (_alignmentBaseline == nil) { + _alignmentBaseline = RNSVGAlignmentBaselineStrings[0]; } - return self.alignmentBaseline; + return _alignmentBaseline; } -- (NSString*) getBaselineShift +- (NSString *)baselineShift { - if (self.baselineShift != nil) { - return self.baselineShift; + if (_baselineShift != nil) { + return _baselineShift; } - if (self.baselineShift == nil) { - UIView* parent = [self superview]; - while (parent != nil) { - if ([parent isKindOfClass:[RNSVGText class]]) { - RNSVGText* node = (RNSVGText*)parent; - NSString* baselineShift = node.baselineShift; - if (baselineShift != nil) { - self.baselineShift = baselineShift; - return baselineShift; - } + + UIView* parent = [self superview]; + while (parent != nil) { + if ([parent isKindOfClass:[RNSVGText class]]) { + RNSVGText* node = (RNSVGText*)parent; + NSString* baselineShift = node.baselineShift; + if (baselineShift != nil) { + _baselineShift = baselineShift; + return baselineShift; } - parent = [parent superview]; } + parent = [parent superview]; } - if (self.baselineShift == nil) { - self.baselineShift = @""; - } - return self.baselineShift; + + // set default value + _baselineShift = @""; + + return _baselineShift; } - (RNSVGGlyphContext *)getGlyphContext