如何修改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
相关产品推荐
相关产品推荐

