--- /dev/null
+from label import label
+
+l = label(1500)
+l.set_font('/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf');
+l.set_fontsize(70)
+for i in range(0,15):
+       l.text((7, 10+i*100), "dveth%02d" % (i))
+l.save('dveth_29mm.png')
 
--- /dev/null
+from label import label
+
+l = label(2425, width=720)
+l.set_font('/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf');
+l.set_fontsize(150)
+for i in range(0,15):
+       l.text((7, 10+i*160), "dveth%02d" % (i))
+l.save('dveth_62mm.png')
 
--- /dev/null
+from PIL import Image, ImageFont, ImageDraw
+
+class label:
+       def __init__(self, length, width=336, landscape=False):
+               assert(width == 336 or width == 720)
+               self.landscape = False
+               self.fontfile = '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf'
+
+               self.im = Image.new("1", (width, length), "white")
+               if self.landscape:
+                       self.im.rotate(90)
+
+       def set_font(self, fontfile):
+               self.fontfile = fontfile
+
+       def set_fontsize(self, size):
+               self.font = ImageFont.truetype(self.fontfile, size)
+
+       def text(self, pos, text):
+               draw = ImageDraw.Draw(self.im)
+               draw.text(pos, text, font=self.font)
+
+       def save(self, outfile):
+               if self.landscape:
+                       self.im.rotate(90)
+               self.im.save(outfile, "PNG")