From 11589f2dc0148831b7e7f1fcf454bf48ce11e6cd Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Thu, 25 May 2023 20:15:36 -0400 Subject: [PATCH] Drop metadata table when subsetting fonts This table contains a list of design/supported languages, which it doesn't make sense to keep in a subset. Fixes #24025 --- lib/matplotlib/backends/_backend_pdf_ps.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/backends/_backend_pdf_ps.py b/lib/matplotlib/backends/_backend_pdf_ps.py index 30d952e7fe34..7a4c2e6a3966 100644 --- a/lib/matplotlib/backends/_backend_pdf_ps.py +++ b/lib/matplotlib/backends/_backend_pdf_ps.py @@ -36,8 +36,13 @@ def get_glyphs_subset(fontfile, characters): options = subset.Options(glyph_names=True, recommended_glyphs=True) - # prevent subsetting FontForge Timestamp and other tables - options.drop_tables += ['FFTM', 'PfEd', 'BDF'] + # Prevent subsetting extra tables. + options.drop_tables += [ + 'FFTM', # FontForge Timestamp. + 'PfEd', # FontForge personal table. + 'BDF', # X11 BDF header. + 'meta', # Metadata stores design/supported languages (meaningless for subsets). + ] # if fontfile is a ttc, specify font number if fontfile.endswith(".ttc"):