我目前正在使用此方法为我的用户圆化图像的边缘:
def _add_corners(self, im, rad=100):
circle = Image.new('L', (rad * 2, rad * 2), 0)
draw = ImageDraw.Draw(circle)
draw.ellipse((0, 0, rad * 2, rad * 2), fill=255)
alpha = Image.new('L', im.size, "white")
w, h = im.size
alpha.paste(circle.crop((0, 0, rad, rad)), (0, 0))
alpha.paste(circle.crop((0, rad, rad, rad * 2)), (0, h - rad))
alpha.paste(circle.crop((rad, 0, rad * 2, rad)), (w - rad, 0))
alpha.paste(circle.crop((rad, rad, rad * 2, rad * 2)), (w - rad, h - rad))
im.putalpha(alpha)
return im
Run Code Online (Sandbox Code Playgroud)
舍入效果非常好,我对此很满意。但是,我还想在边缘的限制内在图像周围绘制边框。我在网上阅读的大部分内容都展示了如何在图像本身上绘制边框(而不是我正在做的圆形边框)。有没有办法做到这一点?我已阅读以下内容: …