commit ce99abd1f209b49680910fb9a93a7a45c0025f25 parent a3031af30703b695f0c4c6df80db6a6dd121afbd Author: Emily Eisenberg <emily@khanacademy.org> Date: Thu, 16 Jul 2015 12:01:26 -0700 Update Dockerfile for ttfautohint, update metrics Summary: Update the MathJaxFonts `Dockerfile` to enable the use of `ttfautohint` which hints our fonts better. Also, fix the location that batik is downloaded from, update some formatting in the `Dockerfile`, and update the fonts and metrics. Test Plan: - Compare a rendered `= - A z 4 \Longrightarrow \Sigma \Biggl(` in Chrome on Windows at font sizes 10px to 20px before and after this change. - See that characters look about the same, or better. - See that the screenshot tests didn't change in firefox (maybe firefox runs the same autohinting algorithm that we do?), and don't visually change in chrome Reviewers: kevinb, alpert Reviewed By: kevinb, alpert Differential Revision: https://phabricator.khanacademy.org/D18977 Diffstat:
119 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/dockers/MathJaxFonts/Dockerfile b/dockers/MathJaxFonts/Dockerfile @@ -2,8 +2,28 @@ FROM ubuntu:14.04 MAINTAINER xymostech <xymostech@gmail.com> # Install things -RUN apt-get -qq update -RUN apt-get -qqy install git dvipng default-jre default-jdk texlive wget fontforge mftrace fonttools optipng advancecomp man-db build-essential unzip zlib1g-dev python-fontforge ruby woff-tools || true +RUN apt-get -qq update && apt-get -qqy install \ + git \ + dvipng \ + default-jre \ + default-jdk \ + texlive \ + wget \ + fontforge \ + mftrace \ + fonttools \ + optipng \ + advancecomp \ + man-db \ + build-essential \ + unzip \ + zlib1g-dev \ + python-fontforge \ + ruby \ + woff-tools \ + pkg-config \ + libharfbuzz-dev \ + libfreetype6-dev || true RUN gem install ttfunk --version 1.1.1 # Download yuicompressor @@ -11,7 +31,7 @@ RUN mkdir /usr/share/yui-compressor/ RUN wget "https://github.com/yui/yuicompressor/releases/download/v2.4.8/yuicompressor-2.4.8.jar" -O /usr/share/yui-compressor/yui-compressor.jar # Download batik-ttf2svg.jar -RUN wget "http://supergsego.com/apache/xmlgraphics/batik/batik-1.7.zip" +RUN wget "https://archive.apache.org/dist/xmlgraphics/batik/batik-1.7.zip" RUN unzip -qq batik-1.7.zip RUN mv batik-1.7/batik-ttf2svg.jar /usr/share/java/ @@ -22,6 +42,13 @@ RUN sed -i "1s/^/#include <cstddef>/" ttf2eot-0.0.2-2/OpenTypeUtilities.h RUN make -C ttf2eot-0.0.2-2/ RUN mv ttf2eot-0.0.2-2/ttf2eot /usr/bin/ +# Download and compile ttfautohint +RUN wget "http://download.savannah.gnu.org/releases/freetype/ttfautohint-1.3.tar.gz" +RUN tar -xzf ttfautohint-1.3.tar.gz +RUN cd ttfautohint-1.3/ && ./configure --without-qt +RUN make -C ttfautohint-1.3/ +RUN mv ttfautohint-1.3/frontend/ttfautohint /usr/bin + # Download and compile woff2_compress RUN git clone "https://code.google.com/p/font-compression-reference/" woff2_compress RUN make -C woff2_compress/woff2/ diff --git a/static/fonts/KaTeX_AMS-Regular.eot b/static/fonts/KaTeX_AMS-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_AMS-Regular.ttf b/static/fonts/KaTeX_AMS-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_AMS-Regular.woff b/static/fonts/KaTeX_AMS-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_AMS-Regular.woff2 b/static/fonts/KaTeX_AMS-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Bold.eot b/static/fonts/KaTeX_Caligraphic-Bold.eot Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Bold.ttf b/static/fonts/KaTeX_Caligraphic-Bold.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Bold.woff b/static/fonts/KaTeX_Caligraphic-Bold.woff Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Bold.woff2 b/static/fonts/KaTeX_Caligraphic-Bold.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Regular.eot b/static/fonts/KaTeX_Caligraphic-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Regular.ttf b/static/fonts/KaTeX_Caligraphic-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Regular.woff b/static/fonts/KaTeX_Caligraphic-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Caligraphic-Regular.woff2 b/static/fonts/KaTeX_Caligraphic-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Bold.eot b/static/fonts/KaTeX_Fraktur-Bold.eot Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Bold.ttf b/static/fonts/KaTeX_Fraktur-Bold.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Bold.woff b/static/fonts/KaTeX_Fraktur-Bold.woff Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Bold.woff2 b/static/fonts/KaTeX_Fraktur-Bold.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Regular.eot b/static/fonts/KaTeX_Fraktur-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Regular.ttf b/static/fonts/KaTeX_Fraktur-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Regular.woff b/static/fonts/KaTeX_Fraktur-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Fraktur-Regular.woff2 b/static/fonts/KaTeX_Fraktur-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Main-Bold.eot b/static/fonts/KaTeX_Main-Bold.eot Binary files differ. diff --git a/static/fonts/KaTeX_Main-Bold.ttf b/static/fonts/KaTeX_Main-Bold.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Main-Bold.woff b/static/fonts/KaTeX_Main-Bold.woff Binary files differ. diff --git a/static/fonts/KaTeX_Main-Bold.woff2 b/static/fonts/KaTeX_Main-Bold.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Main-Italic.eot b/static/fonts/KaTeX_Main-Italic.eot Binary files differ. diff --git a/static/fonts/KaTeX_Main-Italic.ttf b/static/fonts/KaTeX_Main-Italic.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Main-Italic.woff b/static/fonts/KaTeX_Main-Italic.woff Binary files differ. diff --git a/static/fonts/KaTeX_Main-Italic.woff2 b/static/fonts/KaTeX_Main-Italic.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Main-Regular.eot b/static/fonts/KaTeX_Main-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Main-Regular.ttf b/static/fonts/KaTeX_Main-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Main-Regular.woff b/static/fonts/KaTeX_Main-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Main-Regular.woff2 b/static/fonts/KaTeX_Main-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Math-BoldItalic.eot b/static/fonts/KaTeX_Math-BoldItalic.eot Binary files differ. diff --git a/static/fonts/KaTeX_Math-BoldItalic.ttf b/static/fonts/KaTeX_Math-BoldItalic.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Math-BoldItalic.woff b/static/fonts/KaTeX_Math-BoldItalic.woff Binary files differ. diff --git a/static/fonts/KaTeX_Math-BoldItalic.woff2 b/static/fonts/KaTeX_Math-BoldItalic.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Math-Italic.eot b/static/fonts/KaTeX_Math-Italic.eot Binary files differ. diff --git a/static/fonts/KaTeX_Math-Italic.ttf b/static/fonts/KaTeX_Math-Italic.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Math-Italic.woff b/static/fonts/KaTeX_Math-Italic.woff Binary files differ. diff --git a/static/fonts/KaTeX_Math-Italic.woff2 b/static/fonts/KaTeX_Math-Italic.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Math-Regular.eot b/static/fonts/KaTeX_Math-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Math-Regular.ttf b/static/fonts/KaTeX_Math-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Math-Regular.woff b/static/fonts/KaTeX_Math-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Math-Regular.woff2 b/static/fonts/KaTeX_Math-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Bold.eot b/static/fonts/KaTeX_SansSerif-Bold.eot Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Bold.ttf b/static/fonts/KaTeX_SansSerif-Bold.ttf Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Bold.woff b/static/fonts/KaTeX_SansSerif-Bold.woff Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Bold.woff2 b/static/fonts/KaTeX_SansSerif-Bold.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Italic.eot b/static/fonts/KaTeX_SansSerif-Italic.eot Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Italic.ttf b/static/fonts/KaTeX_SansSerif-Italic.ttf Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Italic.woff b/static/fonts/KaTeX_SansSerif-Italic.woff Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Italic.woff2 b/static/fonts/KaTeX_SansSerif-Italic.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Regular.eot b/static/fonts/KaTeX_SansSerif-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Regular.ttf b/static/fonts/KaTeX_SansSerif-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Regular.woff b/static/fonts/KaTeX_SansSerif-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_SansSerif-Regular.woff2 b/static/fonts/KaTeX_SansSerif-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Script-Regular.eot b/static/fonts/KaTeX_Script-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Script-Regular.ttf b/static/fonts/KaTeX_Script-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Script-Regular.woff b/static/fonts/KaTeX_Script-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Script-Regular.woff2 b/static/fonts/KaTeX_Script-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Size1-Regular.eot b/static/fonts/KaTeX_Size1-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Size1-Regular.ttf b/static/fonts/KaTeX_Size1-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Size1-Regular.woff b/static/fonts/KaTeX_Size1-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Size1-Regular.woff2 b/static/fonts/KaTeX_Size1-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Size2-Regular.eot b/static/fonts/KaTeX_Size2-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Size2-Regular.ttf b/static/fonts/KaTeX_Size2-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Size2-Regular.woff b/static/fonts/KaTeX_Size2-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Size2-Regular.woff2 b/static/fonts/KaTeX_Size2-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Size3-Regular.eot b/static/fonts/KaTeX_Size3-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Size3-Regular.ttf b/static/fonts/KaTeX_Size3-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Size3-Regular.woff b/static/fonts/KaTeX_Size3-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Size3-Regular.woff2 b/static/fonts/KaTeX_Size3-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Size4-Regular.eot b/static/fonts/KaTeX_Size4-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Size4-Regular.ttf b/static/fonts/KaTeX_Size4-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Size4-Regular.woff b/static/fonts/KaTeX_Size4-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Size4-Regular.woff2 b/static/fonts/KaTeX_Size4-Regular.woff2 Binary files differ. diff --git a/static/fonts/KaTeX_Typewriter-Regular.eot b/static/fonts/KaTeX_Typewriter-Regular.eot Binary files differ. diff --git a/static/fonts/KaTeX_Typewriter-Regular.ttf b/static/fonts/KaTeX_Typewriter-Regular.ttf Binary files differ. diff --git a/static/fonts/KaTeX_Typewriter-Regular.woff b/static/fonts/KaTeX_Typewriter-Regular.woff Binary files differ. diff --git a/static/fonts/KaTeX_Typewriter-Regular.woff2 b/static/fonts/KaTeX_Typewriter-Regular.woff2 Binary files differ. diff --git a/test/screenshotter/images/Accents-chrome.png b/test/screenshotter/images/Accents-chrome.png Binary files differ. diff --git a/test/screenshotter/images/ArrayType-chrome.png b/test/screenshotter/images/ArrayType-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Arrays-chrome.png b/test/screenshotter/images/Arrays-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Baseline-chrome.png b/test/screenshotter/images/Baseline-chrome.png Binary files differ. diff --git a/test/screenshotter/images/BasicTest-chrome.png b/test/screenshotter/images/BasicTest-chrome.png Binary files differ. diff --git a/test/screenshotter/images/BinomTest-chrome.png b/test/screenshotter/images/BinomTest-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Cases-chrome.png b/test/screenshotter/images/Cases-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Colors-chrome.png b/test/screenshotter/images/Colors-chrome.png Binary files differ. diff --git a/test/screenshotter/images/DeepFontSizing-chrome.png b/test/screenshotter/images/DeepFontSizing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/DelimiterSizing-chrome.png b/test/screenshotter/images/DelimiterSizing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/DisplayMode-chrome.png b/test/screenshotter/images/DisplayMode-chrome.png Binary files differ. diff --git a/test/screenshotter/images/DisplayStyle-chrome.png b/test/screenshotter/images/DisplayStyle-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Exponents-chrome.png b/test/screenshotter/images/Exponents-chrome.png Binary files differ. diff --git a/test/screenshotter/images/FractionTest-chrome.png b/test/screenshotter/images/FractionTest-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Functions-chrome.png b/test/screenshotter/images/Functions-chrome.png Binary files differ. diff --git a/test/screenshotter/images/GreekLetters-chrome.png b/test/screenshotter/images/GreekLetters-chrome.png Binary files differ. diff --git a/test/screenshotter/images/KaTeX-chrome.png b/test/screenshotter/images/KaTeX-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Lap-chrome.png b/test/screenshotter/images/Lap-chrome.png Binary files differ. diff --git a/test/screenshotter/images/LeftRight-chrome.png b/test/screenshotter/images/LeftRight-chrome.png Binary files differ. diff --git a/test/screenshotter/images/LeftRightListStyling-chrome.png b/test/screenshotter/images/LeftRightListStyling-chrome.png Binary files differ. diff --git a/test/screenshotter/images/LeftRightStyleSizing-chrome.png b/test/screenshotter/images/LeftRightStyleSizing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/NestedFractions-chrome.png b/test/screenshotter/images/NestedFractions-chrome.png Binary files differ. diff --git a/test/screenshotter/images/NullDelimiterInteraction-chrome.png b/test/screenshotter/images/NullDelimiterInteraction-chrome.png Binary files differ. diff --git a/test/screenshotter/images/OpLimits-chrome.png b/test/screenshotter/images/OpLimits-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Overline-chrome.png b/test/screenshotter/images/Overline-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Phantom-chrome.png b/test/screenshotter/images/Phantom-chrome.png Binary files differ. diff --git a/test/screenshotter/images/PrimeSpacing-chrome.png b/test/screenshotter/images/PrimeSpacing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/RlapBug-chrome.png b/test/screenshotter/images/RlapBug-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Sizing-chrome.png b/test/screenshotter/images/Sizing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/SizingBaseline-chrome.png b/test/screenshotter/images/SizingBaseline-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Spacing-chrome.png b/test/screenshotter/images/Spacing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Sqrt-chrome.png b/test/screenshotter/images/Sqrt-chrome.png Binary files differ. diff --git a/test/screenshotter/images/SqrtRoot-chrome.png b/test/screenshotter/images/SqrtRoot-chrome.png Binary files differ. diff --git a/test/screenshotter/images/SupSubCharacterBox-chrome.png b/test/screenshotter/images/SupSubCharacterBox-chrome.png Binary files differ. diff --git a/test/screenshotter/images/SupSubHorizSpacing-chrome.png b/test/screenshotter/images/SupSubHorizSpacing-chrome.png Binary files differ. diff --git a/test/screenshotter/images/SupSubOffsets-chrome.png b/test/screenshotter/images/SupSubOffsets-chrome.png Binary files differ. diff --git a/test/screenshotter/images/Text-chrome.png b/test/screenshotter/images/Text-chrome.png Binary files differ. diff --git a/test/screenshotter/images/VerticalSpacing-chrome.png b/test/screenshotter/images/VerticalSpacing-chrome.png Binary files differ.