def _codigoBarraI25(self, num, x, y): """Imprime Código de barras otimizado para boletos O código de barras é otmizado para que o comprimento seja sempre o estipulado pela Febraban de 103mm. """ # http://en.wikipedia.org/wiki/Interleaved_2_of_5 altura = 13 * mm comprimento = 103 * mm thin_bar = 0.254320987654 * mm # Tamanho correto aproximado bc = I2of5(num, barWidth=thin_bar, ratio=3, barHeight=altura, bearers=0, quiet=0, checksum=0) # Recalcula o tamanho do thin_bar para que o cod de barras tenha o # comprimento correto thin_bar = (thin_bar * comprimento) / bc.width bc.__init__(num, barWidth=thin_bar) bc.drawOn(self.pdf_canvas, x, y)
def _codigoBarraI25(self, num, x, y, pdfc=None): """Imprime Código de barras otimizado para boletos O código de barras é otmizado para que o comprimeto seja sempre o estipulado pela febraban de 103mm. """ # http://en.wikipedia.org/wiki/Interleaved_2_of_5 altura = 13 * mm comprimento = 103 * mm tracoFino = 0.254320987654 * mm # Tamanho correto aproximado bc = I2of5(num, barWidth=tracoFino, ratio=3, barHeight=altura, bearers=0, quiet=0, checksum=0) # Recalcula o tamanho do tracoFino para que o cod de barras tenha o # comprimento correto tracoFino = (tracoFino * comprimento) / bc.width bc.__init__(num, barWidth=tracoFino) pdfc_ = pdfc or self.pdfCanvas # Utilizar Canvas de outro componente bc.drawOn(pdfc_, x, y)
def _codigoBarraI25(self, num, x, y ): # http://en.wikipedia.org/wiki/Interleaved_2_of_5 altura = 13 * mm comprimento = 103 * mm #tracoFino = 0.254320987654 * mm #Tamanho correto aproximado tracoFino = 0.3 * mm #Tamanho correto aproximado bc = I2of5(num, barWidth = tracoFino, ratio = 3, barHeight = altura, bearers = 0, quiet = 0, checksum = 0 ) # Recalcula o tamanho do tracoFino para que o cod de barras tenha o # comprimento correto tracoFino = (tracoFino * comprimento)/bc.width bc.__init__(num, barWidth = tracoFino ) bc.drawOn(self.pdfCanvas, x, y)
spool = os.path.join(cleaned, base) # Final spool location parts = 0 debug = open("log.txt", "a") if not os.path.exists(cleaned): os.makedirs(cleaned) for bidx in xrange(len(barcodes)): packet = StringIO.StringIO() print "writing : " + str(bidx) + "\n" # create a new PDF with Reportlab can = canvas.Canvas(packet, pagesize=letter) can.rotate(90) barcode = I2of5(barcodes[bidx], barWidth=0.3 * mm, barHeight=8 * mm, bearers=0, checksum=0) barcode.drawOn(can, 568, -30) can.save() packet.seek(0) #add barcode to new page new_pdf = PdfFileReader(packet) page = infile.getPage(bidx) page.mergePage(new_pdf.getPage(0)) output.addPage(page) print "Creating file..." # finally, write "output" to a real file outputStream = file(spool, "wb")