@@ -86,9 +86,22 @@ def __init__(self, fp, charset_encoding="iso8859-1"):
8686
8787 for ch , ix in enumerate (encoding ):
8888 if ix is not None :
89- x , y , l , r , w , a , d , f = metrics [ix ]
90- glyph = (w , 0 ), (l , d - y , x + l , d ), (0 , 0 , x , y ), bitmaps [ix ]
91- self .glyph [ch ] = glyph
89+ (
90+ xsize ,
91+ ysize ,
92+ left ,
93+ right ,
94+ width ,
95+ ascent ,
96+ descent ,
97+ attributes ,
98+ ) = metrics [ix ]
99+ self .glyph [ch ] = (
100+ (width , 0 ),
101+ (left , descent - ysize , xsize + left , descent ),
102+ (0 , 0 , xsize , ysize ),
103+ bitmaps [ix ],
104+ )
92105
93106 def _getformat (self , tag ):
94107 format , size , offset = self .toc [tag ]
@@ -206,9 +219,11 @@ def _load_bitmaps(self, metrics):
206219 mode = "1"
207220
208221 for i in range (nbitmaps ):
209- x , y , l , r , w , a , d , f = metrics [i ]
210- b , e = offsets [i ], offsets [i + 1 ]
211- bitmaps .append (Image .frombytes ("1" , (x , y ), data [b :e ], "raw" , mode , pad (x )))
222+ xsize , ysize = metrics [i ][:2 ]
223+ b , e = offsets [i : i + 2 ]
224+ bitmaps .append (
225+ Image .frombytes ("1" , (xsize , ysize ), data [b :e ], "raw" , mode , pad (xsize ))
226+ )
212227
213228 return bitmaps
214229
0 commit comments