febrero 03, 2014

ReportLab: pdfgen - La librería lib.colors y transparencia (05)

Por lo general, al rellenar dibujos usamos colores rgb, cmyk, escala de grises, insertando valores para que en combinación nos de un determinado color. Si uno quiere insertar de forma grosa; por ejemplo el color azul, lo puede hacer directamente desde lib.colors. Además que da la opción de insertar colores transparentes:
Veamos el ejemplo:

# -*- coding:utf-8 -*-
import os
from reportlab.lib.pagesizes import A4
from reportlab.pdfgen import canvas
from reportlab.lib.colors import Color, green, red  # Traemos algunos colores

c=canvas.Canvas("test.pdf", pagesize = A4)

print c.getPageNumber()  # Número de página

c.setLineWidth(20)  # Tamaño de la linea
c.setStrokeColorRGB(0.5, 0.5, 0.5)
c.setFillColorRGB(0.9, 0.0, 0.0)
c.rect(200, 300, 200, 200, fill=1)

#Creando color transparente
rojoTransparente = Color(100, 0, 0, alpha=0.5 )

c.setFillColor(green)  # Utilizamos un color que ya tenemos
c.rect(255, 125, 100, 100, fill=1, stroke=False)
c.setFillColor(rojoTransparente)
c.rect(300, 175, 100, 100, fill=1, stroke=False)

c.showPage()

c.save()
os.system("test.pdf")

No hay comentarios:

Publicar un comentario