推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
tiaod
V2EX  ›  Python

改了下 Python QR Code 艺术二维码生成的项目

  •  
  •   tiaod · Jun 12, 2018 · 7873 views
    This topic created in 3070 days ago, the information mentioned may be changed or developed.

    最近打算做一个和二维码相关的项目,搜了一下相关资料,发现了一个Python 生成艺术二维码的项目,挺有意思的,顺手就改了下,把它做成 http 服务。

    项目原作者是 @sylnsfar,这里是他两年前发的主题。

    改的过程中发现,原项目生成的二维码背景图清晰度不够,能明显看到马赛克:

    所以又研究了下作者提到的Halftone QR Code,发现其实可以直接生成一个透明背景的二维码,把背景的填充的工作交给使用者。于是动手改起来,把项目改成了一个生成透明背景二维码的 http 服务器,发现效果挺不错的。

    实际效果测试

    生成的透明背景二维码:

    自行使用 PS 叠加背景图,支持任意高清图,无马赛克:

    甚至制作海报:

    因为原项目使用 GPLv3 协议,所以我修改之后的项目也使用 GPLv3 进行开源: https://github.com/tiaod/qrcode-art-server

    Supplement 1  ·  Jun 13, 2018
    移除了多余的边框,现在看起来更简洁了:


    另外可以自行调节二维码的透明度,让海报看起来更自然:
    Supplement 2  ·  Jun 13, 2018
    继续放一些更新之后的效果:


    Supplement 3  ·  Jun 13, 2018

    2018年6月13日15:50:36更新:已发布到docker hub,想要测试的同学可以直接运行:

    $ docker run -p 5000:5000 tiaod/qrcode-art-server
    

    顺便附上Github地址:https://github.com/tiaod/qrcode-art-server

    后续更新会放在Github上。

    16 replies  •  2018-06-14 10:02:35 +08:00
    wonpain
    wonpain
    Jun 13, 2018 via Android
    1
    赞一个
    7sDream
    7sDream
    Jun 13, 2018 via Android❤️1
    2
    可以瞅一眼我的 pyqart,很早就支持了。
    不过没有时间做这个项目类似的支持动图和透明过滤功能。
    cgwh
    cgwh
    Jun 13, 2018 via Android
    3
    学习了,赞!
    ebony0319
    ebony0319
    Jun 13, 2018 via Android
    4
    赞。
    ericgui
    ericgui
    Jun 13, 2018
    5
    牛逼,这个不错
    tiaod
    tiaod
    OP
    Jun 13, 2018
    6
    @7sDream 我也测试过你的 pyqart,QArt 部分还可以,但是测试 Halftone 时发现马眼周围有些奇怪的边界,没法填充完整
    ![]( )
    ![]( )
    所以最终还是用了 @sylnsfar 写的库,比较好改
    merliny
    merliny
    Jun 13, 2018 via iPhone
    7
    支持中文吗
    tiaod
    tiaod
    OP
    Jun 13, 2018
    8
    @yuyongji1987 基于 sylnsfar/qrcode 开发的,原版不支持中文,所以不支持。我有空重写一下,不基于他的来做就可以了
    cqxxxxxxx
    cqxxxxxxx
    Jun 13, 2018 via Android
    9
    有没有小程序码的美化库或者方案啊。
    brotherlegend
    brotherlegend
    Jun 13, 2018 via Android
    10
    赞 666
    tofishes
    tofishes
    Jun 13, 2018
    11
    漂亮,star
    xiangyuecn
    xiangyuecn
    Jun 13, 2018
    12
    已 star
    为毛 fork 比 star 多 20 多倍 (滑稽
    tiaod
    tiaod
    OP
    Jun 13, 2018
    13
    @cqxxxxxxx 没有。但是小程序码也有普通二维码的形式,可以用普通二维码来转换
    tiaod
    tiaod
    OP
    Jun 13, 2018
    14
    @xiangyuecn 因为我也是 fork 原项目的,所以显示的是 fork 数量,哈哈
    merliny
    merliny
    Jun 14, 2018 via iPhone
    15
    @tiaod 原来如此
    7sDream
    7sDream
    Jun 14, 2018 via Android
    16
    @tiaod

    这个奇怪的问题我抽空看一下,应该根据 spec 这部分并不是数据区。

    但是有点久了记不太清了。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1659 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 13:27 · PVG 21:27 · LAX 05:27 · JFK 08:27
    ♥ Do have faith in what you're doing.