diff --git a/buildTree.js b/buildTree.js index d9eeb10e7..7cd18a78c 100644 --- a/buildTree.js +++ b/buildTree.js @@ -196,6 +196,11 @@ var groupTypes = { p = fontMetrics.metrics.sup2; } + var multiplier = Style.TEXT.sizeMultiplier * + options.style.sizeMultiplier; + // \scriptspace is 0.5pt = 0.05em * 10pt/em + var scriptspace = 0.05 / multiplier + "em"; + var supsub; if (!group.value.sup) { @@ -206,6 +211,7 @@ var groupTypes = { sub.height - 0.8 * fontMetrics.metrics.xHeight); subwrap.style.top = v + "em"; + subwrap.style.marginRight = scriptspace; subwrap.depth = subwrap.depth + v; subwrap.height = 0; @@ -221,6 +227,7 @@ var groupTypes = { sup.depth + 0.25 * fontMetrics.metrics.xHeight); supwrap.style.top = -u + "em"; + supwrap.style.marginRight = scriptspace; supwrap.height = supwrap.height + u; supwrap.depth = 0; @@ -252,6 +259,9 @@ var groupTypes = { supwrap.style.top = -u + "em"; subwrap.style.top = v + "em"; + supwrap.style.marginRight = scriptspace; + subwrap.style.marginRight = scriptspace; + supwrap.height = supwrap.height + u; supwrap.depth = 0; diff --git a/test/huxley/DeepFontSizing.hux/firefox-1.png b/test/huxley/DeepFontSizing.hux/firefox-1.png index 99b18ddad..ddc0f8901 100644 Binary files a/test/huxley/DeepFontSizing.hux/firefox-1.png and b/test/huxley/DeepFontSizing.hux/firefox-1.png differ diff --git a/test/huxley/Huxleyfile.json b/test/huxley/Huxleyfile.json index 7b00a81aa..335e6075c 100644 --- a/test/huxley/Huxleyfile.json +++ b/test/huxley/Huxleyfile.json @@ -117,5 +117,11 @@ "name": "VerticalSpacing", "screenSize": [1024, 768], "url": "http://localhost:7936/test/huxley/test.html?pre=potato
blah&post=
moo&m=x^{\\Huge y}z" + }, + + { + "name": "SupSubHorizSpacing", + "screenSize": [1024, 768], + "url": "http://localhost:7936/test/huxley/test.html?m=x^{x^{x}}\\Big|x_{x_{x_{x_{x}}}}\\bigg|x^{x^{x_{x_{x_{x_{x}}}}}}\\bigg|" } ] diff --git a/test/huxley/Overline.hux/firefox-1.png b/test/huxley/Overline.hux/firefox-1.png index 0ae10a096..918199b8b 100644 Binary files a/test/huxley/Overline.hux/firefox-1.png and b/test/huxley/Overline.hux/firefox-1.png differ diff --git a/test/huxley/Spacing.hux/firefox-1.png b/test/huxley/Spacing.hux/firefox-1.png index d24e91db2..d2ec2d49c 100644 Binary files a/test/huxley/Spacing.hux/firefox-1.png and b/test/huxley/Spacing.hux/firefox-1.png differ diff --git a/test/huxley/SupSubCharacterBox.hux/firefox-1.png b/test/huxley/SupSubCharacterBox.hux/firefox-1.png index f9a227975..e38794137 100644 Binary files a/test/huxley/SupSubCharacterBox.hux/firefox-1.png and b/test/huxley/SupSubCharacterBox.hux/firefox-1.png differ diff --git a/test/huxley/SupSubHorizSpacing.hux/firefox-1.png b/test/huxley/SupSubHorizSpacing.hux/firefox-1.png new file mode 100644 index 000000000..2eccba9a4 Binary files /dev/null and b/test/huxley/SupSubHorizSpacing.hux/firefox-1.png differ diff --git a/test/huxley/SupSubHorizSpacing.hux/record.json b/test/huxley/SupSubHorizSpacing.hux/record.json new file mode 100644 index 000000000..3cae6ac65 --- /dev/null +++ b/test/huxley/SupSubHorizSpacing.hux/record.json @@ -0,0 +1,5 @@ +[ + { + "action": "screenshot" + } +] diff --git a/test/huxley/VerticalSpacing.hux/firefox-1.png b/test/huxley/VerticalSpacing.hux/firefox-1.png index bcf86c30d..deabf6ff1 100644 Binary files a/test/huxley/VerticalSpacing.hux/firefox-1.png and b/test/huxley/VerticalSpacing.hux/firefox-1.png differ