@@ -987,7 +987,13 @@ def __init__(self, size=None, weight='normal'):
987
987
for fontext in ["afm" , "ttf" ]:
988
988
for path in [* findSystemFonts (paths , fontext = fontext ),
989
989
* findSystemFonts (fontext = fontext )]:
990
- self .addfont (path )
990
+ try :
991
+ self .addfont (path )
992
+ except OSError as exc :
993
+ _log .info ("Failed to open font file %s: %s" , path , exc )
994
+ except Exception as exc :
995
+ _log .info ("Failed to extract font properties from %s: %s" ,
996
+ path , exc )
991
997
992
998
def addfont (self , path ):
993
999
"""
@@ -999,36 +1005,13 @@ def addfont(self, path):
999
1005
path : str or path-like
1000
1006
"""
1001
1007
if Path (path ).suffix .lower () == ".afm" :
1002
- try :
1003
- with open (path , "rb" ) as fh :
1004
- font = afm .AFM (fh )
1005
- except EnvironmentError :
1006
- _log .info ("Could not open font file %s" , path )
1007
- return
1008
- except RuntimeError :
1009
- _log .info ("Could not parse font file %s" , path )
1010
- return
1011
- try :
1012
- prop = afmFontProperty (path , font )
1013
- except KeyError as exc :
1014
- _log .info ("Could not extract properties for %s: %s" , path , exc )
1015
- return
1008
+ with open (path , "rb" ) as fh :
1009
+ font = afm .AFM (fh )
1010
+ prop = afmFontProperty (path , font )
1016
1011
self .afmlist .append (prop )
1017
1012
else :
1018
- try :
1019
- font = ft2font .FT2Font (path )
1020
- except (OSError , RuntimeError ) as exc :
1021
- _log .info ("Could not open font file %s: %s" , path , exc )
1022
- return
1023
- except UnicodeError :
1024
- _log .info ("Cannot handle unicode filenames" )
1025
- return
1026
- try :
1027
- prop = ttfFontProperty (font )
1028
- except (KeyError , RuntimeError , ValueError ,
1029
- NotImplementedError ) as exc :
1030
- _log .info ("Could not extract properties for %s: %s" , path , exc )
1031
- return
1013
+ font = ft2font .FT2Font (path )
1014
+ prop = ttfFontProperty (font )
1032
1015
self .ttflist .append (prop )
1033
1016
1034
1017
@property
0 commit comments