diff --git a/README.md b/README.md index 05e8598..8677b81 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ so the equations are rendered exactly as LaTeX would render them. ` SwiftMath` is a Swift translation of the latest `iosMath` v0.9.5 release but includes bug fixes and enhancements like a new \lbar (lambda bar) character and cyrillic alphabet support. +The original `iosMath` test suites have also been translated to Swift and run without errors. +Note: Error test conditions are ignored to avoid tagging everything with silly `throw`s. Please let me know of any bugs or bug fixes that you find. `SwiftMath` prepackages everything needed for direct access via the Swift Package Manager. diff --git a/Sources/SwiftMath/MathRender/MTMathListDisplay.swift b/Sources/SwiftMath/MathRender/MTMathListDisplay.swift index 4455d39..cd4e6a7 100644 --- a/Sources/SwiftMath/MathRender/MTMathListDisplay.swift +++ b/Sources/SwiftMath/MathRender/MTMathListDisplay.swift @@ -369,11 +369,14 @@ class MTFractionDisplay : MTDisplay { self.textColor?.setStroke() // draw the horizontal line - let path = MTBezierPath() - path.move(to: CGPointMake(self.position.x, self.position.y + self.linePosition)) - path.addLine(to: CGPointMake(self.position.x + self.width, self.position.y + self.linePosition)) - path.lineWidth = self.lineThickness - path.stroke() + // Note: line thickness of 0 draws the thinnest possible line - we want no line so check for 0s + if self.lineThickness > 0 { + let path = MTBezierPath() + path.move(to: CGPointMake(self.position.x, self.position.y + self.linePosition)) + path.addLine(to: CGPointMake(self.position.x + self.width, self.position.y + self.linePosition)) + path.lineWidth = self.lineThickness + path.stroke() + } context.restoreGState() } diff --git a/Sources/SwiftMath/MathRender/MTTypesetter.swift b/Sources/SwiftMath/MathRender/MTTypesetter.swift index 8a10720..2504d2a 100644 --- a/Sources/SwiftMath/MathRender/MTTypesetter.swift +++ b/Sources/SwiftMath/MathRender/MTTypesetter.swift @@ -962,7 +962,7 @@ class MTTypesetter { var numeratorShiftUp = self.numeratorShiftUp(frac!.hasRule) var denominatorShiftDown = self.denominatorShiftDown(frac!.hasRule) let barLocation = styleFont.mathTable!.axisHeight - let barThickness = frac!.hasRule ? styleFont.mathTable!.fractionRuleThickness : 0; + let barThickness = frac!.hasRule ? styleFont.mathTable!.fractionRuleThickness : 0 if frac!.hasRule { // This is the difference between the lowest edge of the numerator and the top edge of the fraction bar