[Answered ]-Saving a QR Code in django python as base64 for to_artistic method

1👍

You can pass a file-like object to the target, so:

import segno

qr = segno.make('The Beatles -- Abbey Road', error='h')

buffer = io.BytesIO()
qr.to_artistic(
    background='my_background.gif',
    target=buffer,
    scale=4,
    kind='gif'
)
qr_code = 'data: image/gif;base64, '+base64.b64encode(buffer.getvalue()).decode('utf-8')

You need to specify the kind=… parameter, otherwise the library will try to derive this from the filename, but since you use a BytesIO object, this has no filename.

Leave a comment