Closed Dan-Veinberg closed 8 months ago
I made the background transparent by using the python pil library. The background must be white because it looks for white pixels.
`import qrcode import PIL import sys from PIL import Image from qrcode import constants
from qrcode.image.styledpil import StyledPilImage from qrcode.image.styles.moduledrawers.pil import GappedSquareModuleDrawer from qrcode.image.styles.moduledrawers.pil import CircleModuleDrawer from qrcode.image.styles.moduledrawers.pil import RoundedModuleDrawer from qrcode.image.styles.moduledrawers.pil import VerticalBarsDrawer from qrcode.image.styles.moduledrawers.pil import HorizontalBarsDrawer
from qrcode.image.styles.colormasks import SolidFillColorMask from qrcode.image.styles.colormasks import RadialGradiantColorMask from qrcode.image.styles.colormasks import HorizontalGradiantColorMask from qrcode.image.styles.colormasks import SquareGradiantColorMask from qrcode.image.styles.colormasks import VerticalGradiantColorMask
qr = qrcode.QRCode( version=2, error_correction= qrcode.constants.ERROR_CORRECT_Q, box_size=10, border=4, )
qr.add_data("http://google.com")
img_2 = qr.make_image(image_factory=StyledPilImage, module_drawer=GappedSquareModuleDrawer(1), color_mask=SolidFillColorMask((255,255,255),(0,0,0))) img_2.save("qrcodetransparent" + ".png")
img = Image.open('qrcodetransparent.png') img = img.convert("RGBA") datas = img.getdata()
newData = [] for item in datas: if item[0] == 255 and item[1] == 255 and item[2] == 255: newData.append((255, 255, 255, 0)) else: newData.append(item)
img.putdata(newData) img.save("qrcodetransparent.png", "PNG")`
I did it using python PIL library.
I was wondering if you can make the background transparent when creating solidfillcolormask?