diff --git a/src/functions/genfrac.js b/src/functions/genfrac.js index 26078d81..7a2c6d11 100644 --- a/src/functions/genfrac.js +++ b/src/functions/genfrac.js @@ -17,7 +17,9 @@ const htmlBuilder = (group, options) => { // function used let style = options.style; if (group.size === "display") { - style = Style.DISPLAY; + // Get display style as a default. + // If incoming style is sub/sup, use style.text() to get correct size. + style = style.id > 3 ? style.text() : Style.DISPLAY; } else if (group.size === "text" && style.size === Style.DISPLAY.size) { // We're in a \tfrac but incoming style is displaystyle, so: @@ -69,7 +71,7 @@ const htmlBuilder = (group, options) => { let numShift; let clearance; let denomShift; - if (style.size === Style.DISPLAY.size) { + if (style.size === Style.DISPLAY.size || group.size === "display") { numShift = options.fontMetrics().num1; if (ruleWidth > 0) { clearance = 3 * ruleSpacing; diff --git a/test/screenshotter/images/FractionTest-chrome.png b/test/screenshotter/images/FractionTest-chrome.png index 3b6578bb..fc21da1b 100644 Binary files a/test/screenshotter/images/FractionTest-chrome.png and b/test/screenshotter/images/FractionTest-chrome.png differ diff --git a/test/screenshotter/images/FractionTest-firefox.png b/test/screenshotter/images/FractionTest-firefox.png index b91b92c9..d2e58adb 100644 Binary files a/test/screenshotter/images/FractionTest-firefox.png and b/test/screenshotter/images/FractionTest-firefox.png differ diff --git a/test/screenshotter/ss_data.yaml b/test/screenshotter/ss_data.yaml index 3e3ef9a1..d3ca6af8 100644 --- a/test/screenshotter/ss_data.yaml +++ b/test/screenshotter/ss_data.yaml @@ -115,9 +115,10 @@ ExtensibleArrows: | \end{array} FractionTest: | \begin{array}{l} - \dfrac{a}{b}\frac{a}{b}\tfrac{a}{b}\;-\dfrac12\;1\tfrac12\;{1 \atop 2}\; \cfrac{1}{1+\cfrac{1}{x}} \\[2.5em] - {a \brace b} \; {a \brack b} \; \genfrac \{ ]{0.8pt}{0}{a}{b} - \; {a \above1.0pt b} + \dfrac{a}{b}\frac{a}{b}\tfrac{a}{b}\;-\dfrac12\;1\tfrac12\;{1 \atop 2} + \; {a \brace b} \; {a \brack b} \\[1em] + \genfrac \{ ]{0.8pt}{0}{a}{b} \; {a \above1.0pt b} \; \cfrac{1}{1+\cfrac{1}{x}} + \xrightarrow[\dfrac g h]{\displaystyle\frac g h} \; \xrightarrow [2.\, \dfrac c d] {1.\, \displaystyle\frac c d} \end{array} Functions: \sin\cos\tan\ln\log Gathered: |