@@ -217,6 +217,7 @@ def _save_all(im, fp, filename):
217217 verbose = False
218218 lossless = im .encoderinfo .get ("lossless" , False )
219219 quality = im .encoderinfo .get ("quality" , 80 )
220+ alpha_quality = im .encoderinfo .get ("alpha_quality" , 100 )
220221 method = im .encoderinfo .get ("method" , 0 )
221222 icc_profile = im .encoderinfo .get ("icc_profile" ) or ""
222223 exif = im .encoderinfo .get ("exif" , "" )
@@ -296,6 +297,7 @@ def _save_all(im, fp, filename):
296297 rawmode ,
297298 lossless ,
298299 quality ,
300+ alpha_quality ,
299301 method ,
300302 )
301303
@@ -310,7 +312,7 @@ def _save_all(im, fp, filename):
310312 im .seek (cur_idx )
311313
312314 # Force encoder to flush frames
313- enc .add (None , round (timestamp ), 0 , 0 , "" , lossless , quality , 0 )
315+ enc .add (None , round (timestamp ), 0 , 0 , "" , lossless , quality , alpha_quality , 0 )
314316
315317 # Get the final output from the encoder
316318 data = enc .assemble (icc_profile , exif , xmp )
@@ -324,6 +326,7 @@ def _save_all(im, fp, filename):
324326def _save (im , fp , filename ):
325327 lossless = im .encoderinfo .get ("lossless" , False )
326328 quality = im .encoderinfo .get ("quality" , 80 )
329+ alpha_quality = im .encoderinfo .get ("alpha_quality" , 100 )
327330 icc_profile = im .encoderinfo .get ("icc_profile" ) or ""
328331 exif = im .encoderinfo .get ("exif" , b"" )
329332 if isinstance (exif , Image .Exif ):
@@ -343,6 +346,7 @@ def _save(im, fp, filename):
343346 im .size [1 ],
344347 lossless ,
345348 float (quality ),
349+ float (alpha_quality ),
346350 im .mode ,
347351 icc_profile ,
348352 method ,
0 commit comments