1 Alpha Colours (transparency)
增加了支持alpha(透明度)。这作品通过指定每种颜色的'阿尔法'值,以及传统的红色,绿色和蓝色。默认情况下,α为1.0(即不透)。
这个片断显示了两个案件的矩形重叠。第一种情况下使用纯色,它下面隐藏了一个红色的矩形。第二种情况下,使用透明的颜色,这样就可以看到蓝色矩形通过红色。
阿尔法的目的是使用RGB颜色。专业的印刷和CMYK世界的透明效果,我们将很快发布另一种技术。
"""
A simple usage of alpha (transparent) colours
"""
from reportlab.graphics.shapes import Rect
from reportlab.pdfgen.canvas import Canvas
from reportlab.lib.colors import PCMYKColor, PCMYKColorSep, Color, black, blue, red
filename = 'alpha.pdf'
red50transparent = Color( 100, 0, 0, alpha=0.5)
c = Canvas(filename,pagesize=(400,200))
c.setFillColor(black)
c.setFont('Helvetica', 10)
c.drawString(25,180, 'solid')
c.setFillColor(blue)
c.rect(25,25,100,100, fill=True, stroke=False)
c.setFillColor(red)
c.rect(100,75,100,100, fill=True, stroke=False)
c.setFillColor(black)
c.drawString(225,180, 'transparent')
c.setFillColor(blue)
c.rect(225,25,100,100, fill=True, stroke=False)
c.setFillColor(red50transparent)
c.rect(300,75,100,100, fill=True, stroke=False)
c.save()