You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Python qrcode模块生成的二维码渐变颜色?

修改二维码渐变颜色的正确方法

你需要给RadialGradiantColorMask类传入起始颜色和结束颜色参数来自定义渐变效果,而非直接替换成颜色元组。具体修改方式如下:

示例代码

from qrcode.image.styledpil import StyledPilImage
from qrcode.image.styles.moduledrawers import RoundedModuleDrawer
from qrcode.image.styles.colormasks import RadialGradiantColorMask
import qrcode

qr = qrcode.QRCode(
    version=1,
    error_correction=qrcode.constants.ERROR_CORRECT_L,
    box_size=10,
    border=4,
)
qr.add_data("Some text")
qr.make(fit=True)

# 自定义径向渐变的起止颜色
self.img = qr.make_image(
    back_color="Transparent", 
    image_factory=StyledPilImage, 
    module_drawer=RoundedModuleDrawer(), 
    # 通过start_color和end_color设置渐变色彩
    color_mask=RadialGradiantColorMask(start_color=(255, 0, 0), end_color=(0, 0, 255))
)
self.img.show()

参数说明

  • start_color:渐变的起始颜色,支持RGB元组(如(255,0,0))或颜色名称(如"red")
  • end_color:渐变的结束颜色,格式与start_color一致

注意:如果同时设置fill_color和color_mask,color_mask会覆盖fill_color的纯色设置,因此可以直接去掉fill_color,仅通过color_mask控制渐变效果。

内容的提问来源于stack exchange,提问作者For Cc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 09:09:56