Getting set_options() missing 1 required positional argument: 'options' Error when trying to generate an Image
I'm getting the following error as soon as Pillow is addedin my env. I've tried with both Pillow 8.0.0 and 8.4.0.
This comes after either write or a save, i.e
ean = EAN13(query,writer=ImageWriter) buff = io.BytesIO() ean.write(buff)
or
ean = EAN13(query,writer=ImageWriter) filename = ean.save('ean13')
When uninstalling Pillow, the error disappears
File "/Devs/trixintegration/trix/lib/python3.8/site-packages/flask/app.py", line 2073, in wsgi_app response = self.full_dispatch_request() File "/Devs/trixintegration/trix/lib/python3.8/site-packages/flask/app.py", line 1518, in full_dispatch_request rv = self.handle_user_exception(e) File "/Devs/trixintegration/trix/lib/python3.8/site-packages/flask/app.py", line 1516, in full_dispatch_request rv = self.dispatch_request() File "/Devs/trixintegration/trix/lib/python3.8/site-packages/flask/app.py", line 1502, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args) File "/Devs/trixintegration/barcodeapp.py", line 20, in gen_barcode ean.save(query) File "/Devs/trixintegration/trix/lib/python3.8/site-packages/barcode/base.py", line 65, in save output = self.render(options) File "/Devs/trixintegration/trix/lib/python3.8/site-packages/barcode/ean.py", line 121, in render return Barcode.render(self, options, text) File "/Devs/trixintegration/trix/lib/python3.8/site-packages/barcode/base.py", line 103, in render self.writer.set_options(options) TypeError: set_options() missing 1 required positional argument: 'options'
Same Issue here
See the set option here : https://python-barcode.readthedocs.io/en/stable/writers/index.html?highlight=number_of_lines use this way :
from io import BytesIO
from barcode import EAN13
options = {
"module_width": 0.1,
"module_height": 7,
"quiet_zone": 0.1,
"write_text": False,
"text_distance": 2,
}
buff= BytesIO()
ean = EAN13(query,writer=ImageWriter()).write(buff,options)
same issue just replace ean = EAN13(query,writer=ImageWriter) buff = io.BytesIO() ean.write(buff) with ean = EAN13(query,writer=ImageWriter()) buff = io.BytesIO() ean.write(buff)