美文网首页
脚本-将图片转为圆形

脚本-将图片转为圆形

作者: 愤愤的有痣青年 | 来源:发表于2019-12-18 11:23 被阅读0次

原图如下:


1.jpg

结果图:


2.png

代码:

from PIL import Image, ImageDraw

def picture_turns_round(image, diameter_scale=1):
    """
    将图片转为圆形
    :param image:图片
    :param diameter_scale: 圆形直径与image最短边的比例
    :return:
    """
    radius = int(diameter_scale * min(image.size) / 2)

    rgbm = image.split()
    if len(rgbm) == 4:
        r, g, b, mask = rgbm
    else:
        r, g, b = rgbm
        mask = Image.new('L', image.size, 0)

    mask_draw = ImageDraw.Draw(mask)
    w, h = image.size
    w_, h_ = int(w / 2), int(h / 2)
    xy = ((w_ - radius, h_ - radius), (w_ + radius, h_ + radius))
    mask_draw.ellipse(xy, fill=255)
    return Image.merge('RGBA', (r, g, b, mask))


if __name__ == "__main__":
    img = Image.open('cat.jpg')
    round_img = picture_turns_round(img)
    round_img.show()

使用时若提示PIL没有安装,可以使用pip instal Image来安装

相关文章

  • 脚本-将图片转为圆形

    原图如下: 结果图: 代码: 使用时若提示PIL没有安装,可以使用pip instal Image来安装

  • Android种图片圆形化的三种方式

    最近被问到如何将图片转为圆形显示出来,当时脑袋一蒙,想着图片加载框架(如glide等)不都有这个功能了么?但感觉自...

  • 网页title插入logo

    将图片转为ico格式,网上有在线转。

  • Linux将图片转为raw

    整理旧笔记 使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为: 注:u...

  • FFmpeg将视频转为图片

    通过FFmpeg将视频每一帧转为图片步骤如下:1.打开输入的多媒体文件,检索多媒体文件中的流信息2.查找视频流的索...

  • iOS 将storyboard转为图片

    一、背景 目前launchimages已被苹果完全废弃,都使用LaunchScreen.storyboard作为启...

  • 将显示图片变为圆形

    1,xcode提供两种编辑图形属性的方法,你可以直接通过代码更新它的属性,如下代码 2,一个更简单的办法是通过界面...

  • JSP-001-初识JSP

    编译的过程包括三个步骤: 解析JSP文件。 将JSP文件转为servlet。 编译servlet。 脚本程序脚本程...

  • Android 自定义圆形头像1.0

    两种方式 1本地获取图片 2通过网络获取网络图片通过BitmapShader转为圆形图片 两种方式的实现方法相同,...

  • 将方形图片转换成圆形图片

    现在APP界面上都需要将头像显示成圆形,调用以下方法就可以将原始图片转换成圆形图片

网友评论

      本文标题:脚本-将图片转为圆形

      本文链接:https://www.haomeiwen.com/subject/gwgynctx.html