Skip to content

Commit fcf17e2

Browse files
committed
Further tweak pil_kwargs handling.
1 parent 0ef6aa8 commit fcf17e2

File tree

1 file changed

+16
-29
lines changed

1 file changed

+16
-29
lines changed

lib/mplcairo/base.py

Lines changed: 16 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -371,19 +371,15 @@ def print_png(self, path_or_stream, *,
371371
f"https://matplotlib.org",
372372
**(metadata if metadata is not None else {}),
373373
}
374-
if pil_kwargs is None:
375-
pil_kwargs = {}
376-
else:
377-
pil_kwargs = pil_kwargs.copy()
378374
# Only use the metadata kwarg if pnginfo is not set, because the
379375
# semantics of duplicate keys in pnginfo is unclear.
380-
if "pnginfo" not in pil_kwargs:
381-
pnginfo = PngInfo()
382-
for k, v in metadata.items():
383-
pnginfo.add_text(k, v)
384-
pil_kwargs["pnginfo"] = pnginfo
385-
pil_kwargs.setdefault("dpi", (self.figure.dpi, self.figure.dpi))
386-
Image.fromarray(img).save(path_or_stream, format="png", **pil_kwargs)
376+
pnginfo = PngInfo()
377+
for k, v in metadata.items():
378+
pnginfo.add_text(k, v)
379+
Image.fromarray(img).save(path_or_stream, format="png", **{
380+
"pnginfo": pnginfo,
381+
"dpi": (self.figure.dpi, self.figure.dpi),
382+
**(pil_kwargs if pil_kwargs is not None else {})})
387383

388384
def print_jpeg(self, path_or_stream, *,
389385
dryrun=False, pil_kwargs=None, **kwargs):
@@ -396,43 +392,34 @@ def print_jpeg(self, path_or_stream, *,
396392
self.figure.set_facecolor((r, g, b, a))
397393
if dryrun:
398394
return
399-
if pil_kwargs is None:
400-
pil_kwargs = {}
401-
else:
402-
pil_kwargs = pil_kwargs.copy()
403-
pil_kwargs.setdefault("dpi", (self.figure.dpi, self.figure.dpi))
404395
_check_print_extra_kwargs(**kwargs)
405-
Image.fromarray(img).save(path_or_stream, format="jpeg", **pil_kwargs)
396+
Image.fromarray(img).save(path_or_stream, format="jpeg", **{
397+
"dpi": (self.figure.dpi, self.figure.dpi),
398+
**(pil_kwargs if pil_kwargs is not None else {})})
406399

407400
print_jpg = print_jpeg
408401

409402
def print_tiff(self, path_or_stream, *,
410403
dryrun=False, pil_kwargs=None, **kwargs):
411-
if pil_kwargs is None:
412-
pil_kwargs = {}
413-
else:
414-
pil_kwargs = pil_kwargs.copy()
415-
pil_kwargs.setdefault("dpi", (self.figure.dpi, self.figure.dpi))
416404
_check_print_extra_kwargs(**kwargs)
417405
img = self._get_fresh_straight_rgba8888()
418406
if dryrun:
419407
return
420-
Image.fromarray(img).save(path_or_stream, format="tiff", **pil_kwargs)
408+
Image.fromarray(img).save(path_or_stream, format="tiff", **{
409+
"dpi": (self.figure.dpi, self.figure.dpi),
410+
**(pil_kwargs if pil_kwargs is not None else {})})
421411

422412
print_tif = print_tiff
423413

424414
def print_webp(self, path_or_stream, *,
425415
dryrun=False, pil_kwargs=None, **kwargs):
426-
if pil_kwargs is None:
427-
pil_kwargs = {}
428-
else:
429-
pil_kwargs = pil_kwargs.copy()
430-
pil_kwargs.setdefault("dpi", (self.figure.dpi, self.figure.dpi))
431416
_check_print_extra_kwargs(**kwargs)
432417
img = self._get_fresh_straight_rgba8888()
433418
if dryrun:
434419
return
435-
Image.fromarray(img).save(path_or_stream, format="webp", **pil_kwargs)
420+
Image.fromarray(img).save(path_or_stream, format="webp", **{
421+
"dpi": (self.figure.dpi, self.figure.dpi),
422+
**(pil_kwargs if pil_kwargs is not None else {})})
436423

437424

438425
@_Backend.export

0 commit comments

Comments
 (0)