On Thursday, 7 December 2017 14:02:49 UTC+1, Sergi Almacellas Abellana wrote: > El 07/12/17 a les 13:35, ha escrit: > > Hello All, > > > > We want to add dynamically created images to a report, but we can't get it > > working :-( . It's a generated 2D-barcode based on a product code. We added > > a frame an added on tab Options as name image: (record.barcode, > > 'image/png'), but we only get a strange line and not a 2D-barcode. > > We also added a binary-field to the product to see if that was going to > > work, but we get the same result. > > > > Does anybody got this working and can you provide an example? > > Which library are you using to generate the barcode?
Because we want 2D-barcode (QR-code or Datamatrix) we cannot use pyBarcode. We use treepoem [1] which is a wrapper around and postscript barcode generator [1] https://github.com/YPlan/treepoem > > We are using pyBarcode without problems. Here is the relevant code: > > import barcode > > from barcode.writer import ImageWriter> > class Product: > barcode = fields.Function(fields.Binary("Barcode", > 'get_barcode') > def get_barcode(self, name): > fd = BytesIO() > barcode.generate( > 'ean13', self.code[:12].zfill(12), > writer=ImageWriter(), output=fd) > fd.seek(0) > return fields.Binary.cast(fd.read()) > This should show without problems on the report. I've tried something similar with treepoem: def get_2dbarcode(self, name): fd = io.BytesIO() # generate 2D-barcode image = treepoem.generate_barcode( 'datamatrix', "THA00007", # normally this will be dynamic {}, ) image.save(fd, format="png") fd.seek(0) return fields.Binary.cast(fd.read()) But no luck. -- You received this message because you are subscribed to the Google Groups "tryton-dev" group. To view this discussion on the web visit https://groups.google.com/d/msgid/tryton-dev/3a516ac9-5c9f-4dec-8722-dd6f837c59c7%40googlegroups.com.