爱意满满的作品展示区。
lem123

扩展《丑丑头像生成器》,支持 api 调用,并且固定返回值

  •  2
     
  •   lem123 · May 21, 2024 · 4360 views
    This topic created in 898 days ago, the information mentioned may be changed or developed.

    声明

    本文的头像生成部分参考了项目 txstc55/ugly-avatar。

    背景

    在浏览社区论坛时,我注意到许多相似的头像,它们虽然并不美观,但却具有鲜明的特点。通过查阅评论,我发现这些头像都是由一个开源的头像生成工具制作的。

    效果展示

    ![转存失败,建议直接上传图片文件]( https://github.com/mamumu123/picx-images-hosting/raw/master/截屏 2024-05-20-15.44.50.5mnmsiwu1r.webp)

    体验地址

    demo 体验地址

    源码地址

    github 地址

    项目介绍

    做了哪些优化

    • 增设了 API 接口,可以直接返回随机生成的头像;
    • 添加了 'id' 和 'username' 参数,通过固定这两个参数,可以确保返回的头像保持一致;
    • 增加了 'bg_color' 参数,通过这个参数,可以确保头像的背景色是固定的颜色值;
    • 增加了 'w' 和 'h' 参数,通过这个参数,可以指定返回图片的宽度和高度;

    api demo

    随机返回

    https://next-api-share.vercel.app/api/face

    固定背景色

    https://next-api-share.vercel.app/api/face?bg_color=rgb(245,245,220)

    https://next-api-share.vercel.app/api/face?bg_color=red

    固定返回值

    https://next-api-share.vercel.app/api/face?id=666

    https://next-api-share.vercel.app/api/face?username=john

    固定宽度或高度

    https://next-api-share.vercel.app/api/face?w=400&h=400

    16 replies  •  2024-05-23 13:25:46 +08:00
    Glkcv
    Glkcv
    May 21, 2024
    1
    固定背景色很实用
    ldyisbest
    ldyisbest
    May 21, 2024
    2
    建议限制一下 w 和 h 的最大值,
    busy0769
    busy0769
    May 21, 2024
    3
    请问如果不安装 node.js 的话,要如何部署哦?小白一枚
    lem123
    lem123
    OP
    May 21, 2024
    5
    @Lexgni 感谢支持
    @ldyisbest 有什么应用场景吗?
    @busy0769 可以了解一下 vercel ?免费的,而且很简单。
    @blessingcr 从代码角度我并没有主动限制尺寸,感觉是在某一个阶段被非主动处理了。
    luzemin
    luzemin
    May 21, 2024
    6
    哈哈,“丑丑头像”我个人在 share 的时候给起的名字,你这个“潦草头像”听起来更好一些
    dhb233
    dhb233
    May 21, 2024
    7
    原来是 SVG ,我还想为什么 w h 可以设置那么大
    lem123
    lem123
    OP
    May 21, 2024
    8
    @luzemin 参考自之前余华的投稿热搜
    @dhb233 之后可以支持更多的类型,比如 png
    ldyisbest
    ldyisbest
    May 21, 2024
    9
    之前看到过一个攻击,没限制宽高的话,我传一个非常大的数字用脚本跑,会打满 cpu
    txstc5555
    txstc5555
    May 21, 2024
    10
    其实直接设置成 2048 * 2048 max 就行了,一般没有什么网站需要那么大的图片
    lem123
    lem123
    OP
    May 21, 2024
    11
    @ldyisbest 如果图片类型是 png 的话,确实会有这个问题,因为尺寸越大,二进制文件所占的内存就越大;
    但是如果是 svg 的话,刚好避免了这个问题,因为 svg 是文本格式,尺寸仅仅是一个属性字段。
    urApps
    urApps
    May 21, 2024
    12
    @blessingcr
    @lem123 #5

    `/etc/ImageMagick-6/policy.xml`
    ldyisbest
    ldyisbest
    May 21, 2024
    13
    @lem123 那没事了
    bitkuang
    bitkuang
    May 22, 2024 via Android
    14
    star
    tansir
    tansir
    May 23, 2024
    15
    不错。good
    lem123
    lem123
    OP
    May 23, 2024
    16
    @TigerJie 学到了
    @tansir @bitkuang 感谢🙏
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4312 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 05:40 · PVG 13:40 · LAX 21:40 · JFK 00:40
    ♥ Do have faith in what you're doing.