diff --git a/.gitignore b/.gitignore index c351c70..2b56fa8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ brmbar brmbar.com +barcodes.svg diff --git a/barcodes.py b/barcodes.py new file mode 100755 index 0000000..6eb30fb --- /dev/null +++ b/barcodes.py @@ -0,0 +1,46 @@ +#!/usr/bin/python +# +# requires zint binary from zint package +# + +from subprocess import Popen, PIPE +import sys + +svghead = """ + +""" + +svgfoot = """ + +""" + +cntx = 5 +cnty = 10 +scalex = 1.2 +scaley = 1.2 + +f = open('people.txt','r') +items = f.readlines() +f.close() + +items = map(lambda x: x.strip(), items) +items += ['cred50','cred100','cred200','cred500','cred1000','RESET'] + +f = open('barcodes.svg','w') +f.write(svghead) + +i = 0 +j = 0 +for item in items: + elem = Popen(('zint','--directsvg','-d', item), stdout = PIPE).communicate()[0].split('\n') + elem = elem[8:-2] + elem[0] = elem[0].replace('id="barcode"', 'transform="matrix(%f,0,0,%f,%f,%f)"' % (scalex, scaley, 42+i*200 , 14+j*90) ) + elem[23] = item + f.write('\n'.join(elem)) + i += 1 + if i >= cntx: + i = 0 + j += 1 + +f.write(svgfoot) +f.close()