Exemplo n.º 1
0
    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)
Exemplo n.º 2
0
    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)
Exemplo n.º 3
0
    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)
Exemplo n.º 4
0
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")