From da717001a8b51ec2b793526b32bd1b20ca3cc689 Mon Sep 17 00:00:00 2001 From: Manolis Stamatogiannakis Date: Tue, 5 Jun 2018 23:12:29 +0200 Subject: [PATCH] Fixed bug for generating images with transparent background. The contour used was lacking a transparency channel. --- wordcloud/wordcloud.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/wordcloud/wordcloud.py b/wordcloud/wordcloud.py index 31df81e2..fb3d0969 100644 --- a/wordcloud/wordcloud.py +++ b/wordcloud/wordcloud.py @@ -715,12 +715,16 @@ def _draw_contour(self, img): contour = Image.fromarray(contour) contour = contour.filter(ImageFilter.GaussianBlur(radius=radius)) contour = np.array(contour) > 0 - contour = np.dstack((contour, contour, contour)) + if img.mode == 'RGBA': + contour = np.dstack((contour, contour, contour, contour)) + else: + contour = np.dstack((contour, contour, contour)) # color the contour ret = np.array(img) * np.invert(contour) - if self.contour_color != 'black': - color = Image.new(img.mode, img.size, self.contour_color) + + if self.contour_color is not None: + color = np.array(Image.new(img.mode, img.size, self.contour_color)) ret += np.array(color) * contour return Image.fromarray(ret)