Commit Graph

3361 Commits

Author SHA1 Message Date
Davide P. Cervone
f64e50f9eb Use BBOX.updateFrom() in semantics, and handle mstyle with no children. 2015-03-18 11:28:17 -04:00
Davide P. Cervone
95f632a6bd Add autoload ability and stubs for the elements that need autoloading. 2015-03-18 11:23:45 -04:00
Davide P. Cervone
ef47023ba6 Handle bold accents (and potentially, stretchy characters). 2015-03-18 11:01:37 -04:00
Davide P. Cervone
548eba8ef0 Fix regression where bounding boxes aren't adjusted for mathsize 2015-03-18 10:43:51 -04:00
Davide P. Cervone
0306af8564 Use flushText() rather than adding the text by hand. 2015-03-17 12:31:09 -04:00
Davide P. Cervone
87abfa1085 Use removedStyles when checking for font-based variant. 2015-03-17 12:27:14 -04:00
Davide P. Cervone
e971f875d4 Handle stretchy embellished operators. 2015-03-17 12:15:04 -04:00
Davide P. Cervone
6478163a39 Make mn handle italic correction and skew like mn does. 2015-03-17 07:09:06 -04:00
Peter Krautzberger
df17921e8b WIP #1088: change submenu indicators to a more common Unicode point 2015-03-17 11:32:38 +01:00
Davide P. Cervone
0020f2a822 Adjust CHTMLhandleScale() so that \large, etc. affect fractions and other such constructs. (Do the scaling on the mstyle element rather than the individual token elements.) 2015-03-17 06:29:50 -04:00
Peter Krautzberger
f739e64131 WIP for #1088: switch from PNG to \× 2015-03-17 11:20:49 +01:00
Davide P. Cervone
b7868268f9 Handle mathsize, fontsize, style=font-size, setting scriptlevel, and other size changing functions. Get proper bounding boxes for these, and store the scale in the bbox object so that we can refer to it during bbox computations. 2015-03-16 19:25:27 -04:00
Davide P. Cervone
cc370bfcba spacing can be handled within the CHTMLdefaultNode() routine. 2015-03-16 12:00:10 -04:00
Davide P. Cervone
3205a1c1e8 Handle VCENTER TeXatom. 2015-03-16 11:03:52 -04:00
Davide P. Cervone
930a959f71 Fix some bboxes that weren't converted when changing to the BBOX object. 2015-03-16 10:44:35 -04:00
Davide P. Cervone
1bfcea3c48 Support mtextFontInherit 2015-03-16 10:35:02 -04:00
Davide P. Cervone
f570364139 Break CHTMLhandleStyle() into two parts, one that sets the styles and removes the unwanted ones, and CHTMLhandleBBox() that adjustst the BBOX based on the styles. Use this to handle inheritance of font-family, font-weight, and font-style from mstyle with style attributes. 2015-03-16 09:44:43 -04:00
Davide P. Cervone
3d371041a6 Add ability to look up styles that have been removed from mstyle with a style attribute. 2015-03-16 09:43:19 -04:00
Davide P. Cervone
5d3508d830 Add support for style='font-family:...', fontfamily, fontweight, and fontstyle attributes. Cache the results in case they are used more than once. 2015-03-16 09:18:35 -04:00
Peter Krautzberger
391a7a6b91 composer.json author info
should correspond to copyright owner
2015-03-16 08:53:43 +01:00
Davide P. Cervone
6a81434b16 Remove font-based styles (this will be looked up later on token elements) 2015-03-15 10:40:09 -04:00
Davide P. Cervone
d31dad0e79 Adjust bounding box to accound for border and padding 2015-03-15 10:11:54 -04:00
Davide P. Cervone
edfe289983 Handle msup and msub children properly. 2015-03-15 09:25:44 -04:00
Davide P. Cervone
d3b5895468 Create a bbox object with methods for scaling, combining, etc, rather than scaleBBox, combineBBoxes, etc. 2015-03-15 08:52:01 -04:00
Davide P. Cervone
c52d2aaa0c Add some FIXME comments. 2015-03-14 19:06:09 -04:00
Davide P. Cervone
e202cde5ed Add support for href, class, RDFa, aria, and other attributes. 2015-03-14 19:01:21 -04:00
Davide P. Cervone
beabbc7a17 Add bevelled fraction support 2015-03-14 18:40:58 -04:00
Davide P. Cervone
35bd8e0acd Better positioning of extender in vertical stretchy delimiters. 2015-03-14 18:15:45 -04:00
Davide P. Cervone
8ed1db868b Add fondata-extra.js and support for it. 2015-03-14 18:08:10 -04:00
Davide P. Cervone
5107ef02dc Don't need to add the fake nodes again, since already handled by setTeXclass() already does that. (We didn't use it initially.) 2015-03-14 17:59:47 -04:00
Davide P. Cervone
c9ee9fa242 Add font data for the rest of the MathJax fonts, and support for loading them. Currently, there is support for one extra file (not the multiple extra ones from HTML-CSS). 2015-03-14 17:43:17 -04:00
Davide P. Cervone
3443bb6016 Add new otf fonts (more formats needed), and add support for web fonts in addition to local ones 2015-03-13 18:40:10 -04:00
Kevin Barabash
39f5bcb042 Add support for \phantom
Summary:
Using \phantom with non-phantom math in Perseus doesn't render to be the
same size because \phantom uses MathJax and the non-phantom math uses KaTeX.
Implementing \phantom in KaTeX should solve this alignment issue.

Test Plan:
[x] write (and run) unit tests
[x] create (and run) screenshotter tests

Reviewers: emily

Reviewed By: emily

Differential Revision: https://phabricator.khanacademy.org/D16720
2015-03-13 16:24:04 -06:00
Davide P. Cervone
15ab276598 Move unkown character styles to fontdata.js (they are font-dependent) 2015-03-13 15:49:58 -04:00
Davide P. Cervone
c58b546ad7 Cache measurements of unknown characters so they don't have to be remeasured later. 2015-03-13 14:42:24 -04:00
Davide P. Cervone
563dd09fa7 Handle undefined characters (these need measurement,so cause reflows). 2015-03-13 13:34:29 -04:00
Davide P. Cervone
29efa89877 Fix computation of depths to not use width as the default (oops). 2015-03-13 13:12:12 -04:00
Emily Eisenberg
51d751f96d Make text operators <mi>s
Summary: According to the MathML spec [about
identifiers](http://www.w3.org/TR/MathML3/chapter3.html#id.3.2.3.3),
text function names should be <mi>s. This fixes that.

Fixes #202

Test plan:
 - `make test`

Auditors: alpert
2015-03-13 08:11:21 -07:00
Davide P. Cervone
d786c11add Simplify the handling of dimensions in mpadded 2015-03-12 20:01:28 -04:00
Davide P. Cervone
5f8821a0a8 Another try at getting mpadded correct (especially for boxes with small heights). 2015-03-12 19:47:38 -04:00
Emily Eisenberg
2f552af02d Make our own screenshotting script instead of using huxley
Summary:
Create our own screenshotting script which takes screenshots. This
improves over huxley for a couple reasons:
 - It makes the screenshots the correct size (for some reason, huxley struggles
   with this).
 - Its configuration matches more with what we want (we don't need multiple
   screenshots or interaction, we just want a single static shot)
 - It runs faster

I also changed the docs to reflect this change.

Test Plan:
 - Make sure all of the tests that were in the Huxleyfile are now in ss_data.json
 - Run the screenshotter docker
 - Make sure all of the images look reasonable and don't change (except
   sometimes the Lap test, which has some strange pixel-positioning
   differences...)

Reviewers: kevinb

Reviewed By: kevinb

Differential Revision: https://phabricator.khanacademy.org/D16731
2015-03-12 16:40:15 -07:00
Emily Eisenberg
d9396c205a Merge pull request #196 from PeterDaveHello/patch-1
bump version number to v0.2.0 in cdn url
2015-03-12 07:28:44 -07:00
Davide P. Cervone
1b6393cb3d Handle rfix in fontdata (won't be necessary if the fonts are rebuilt, but need it for now), fix spaces so that they are relative to the correct font, and make sure they come after any pending text. 2015-03-11 20:34:47 -04:00
Davide P. Cervone
a406adcb4d Add support for space characters, and adjust fuzz to work better with Chrome. 2015-03-11 15:52:03 -04:00
Davide P. Cervone
ba50c5c690 Handle spacing via classes, get bbox right for MathML spacing, and temporarily restore table formatting. 2015-03-10 21:22:27 -04:00
Davide P. Cervone
83b120d061 Merge branch 'baseline-fonts' into chtml 2015-03-10 20:18:18 -04:00
Davide P. Cervone
59c9f45592 Fix some spacing, and a few minor formatting issues. 2015-03-10 20:17:33 -04:00
Davide P. Cervone
117f29096d Fix wrong property name 2015-03-10 19:54:28 -04:00
Davide P. Cervone
1968831dd0 Use correct offset for \atop and friends 2015-03-10 19:47:27 -04:00
Davide P. Cervone
fdb10e64c4 Rework radicals to match TeX results better for nested radicals (spacing is critical, since the stretchy parts are designed to add up properly with the algorithm). 2015-03-10 19:39:09 -04:00