Increase the tolerance margin in order to pass tests caused by
freetype producing unreproducible images across different versions.
See also: https://github.com/matplotlib/matplotlib/issues/2667

--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -158,7 +158,7 @@
 def make_set(basename, fontset, tests, extensions=None):
     def make_test(filename, test):
         @image_comparison(baseline_images=[filename], extensions=extensions,
-                          tol=32)
+                          tol=40)
         def single_test():
             matplotlib.rcParams['mathtext.fontset'] = fontset
             fig = plt.figure(figsize=(5.25, 0.75))
--- a/lib/matplotlib/tests/test_text.py
+++ b/lib/matplotlib/tests/test_text.py
@@ -18,7 +18,7 @@
 from matplotlib.backends.backend_agg import RendererAgg
 
 
-@image_comparison(baseline_images=['font_styles'])
+@image_comparison(baseline_images=['font_styles'], tol=20)
 def test_font_styles():
     from matplotlib import _get_data_path
     data_path = _get_data_path()
