Skip to content

Commit 79984f7

Browse files
Merge remote-tracking branch 'remotes/origin/v1.0.x'
2 parents 58ce33a + ca42d23 commit 79984f7

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

lib/matplotlib/tests/test_mathtext.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,3 +184,11 @@ def test_mathtext_font_stixsans():
184184
fig.savefig('mathtext_font_stixsans')
185185

186186
matplotlib.rcParams['mathtext.fontset'] = 'cm'
187+
188+
def test_fontinfo():
189+
import matplotlib.font_manager as font_manager
190+
import matplotlib.ft2font as ft2font
191+
fontpath = font_manager.findfont("Bitstream Vera Sans")
192+
font = ft2font.FT2Font(fontpath)
193+
table = font.get_sfnt_table("head")
194+
assert table['version'] == (1, 0)

src/ft2font.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,12 @@
66

77
#include "numpy/arrayobject.h"
88

9-
#define FIXED_MAJOR(val) (*((short *) &val+1))
10-
#define FIXED_MINOR(val) (*((short *) &val+0))
9+
/*
10+
By definition, FT_FIXED as 2 16bit values stored in a single long.
11+
We cast to long to ensure the correct Py::Int convertor is called
12+
*/
13+
#define FIXED_MAJOR(val) (long) ((val & 0xffff000) >> 16)
14+
#define FIXED_MINOR(val) (long) (val & 0xffff)
1115

1216
/**
1317
To improve the hinting of the fonts, this code uses a hack

0 commit comments

Comments
 (0)