reportlab之canvas

劃線

canvas.line(x1,y1,x2,y2)
canvas.line(linelist)

畫圖形

canvas.grid(xlist,ylist)
canvas.bezier(x1,y1,x2,y2)
canves.arc(x1,y1,x2,y2)
canves.rect(x,y,width,height,stroke=1,fill=0)
canves.ellipase(x1,y1,stroke=1,fill=0)
conves.wedge(x1,y1,startAng,extent,stroke=1,fill=0)
canvas.circle(x_cen,y_cen,r,stroke=1,fill=0)
canvas.roundRect(x,y,width,height,radius,stroke=1,fill=0)

寫文本

canvas.drawString(x,y,text)
canvas.drawRightString(x,y,text)
canvas.drawCentredString(x,y,text)

路徑

path = canvas.beginpath()
canvas.drawpath(path,stroke=1,fill=0,fillMode=None)
canvas.clipPath(path,stroke=1,fill=0,fillMode=None)

在實(shí)際使用中使用beginpath要比drawPath有時(shí)候要多一些

圖像

畫圖有兩種方法drawInlineImagedrawImage 前者是比較古老的方法

canvas.drawInlineImage(self,image,x,y,width=None,height=None)
canvas.drawImage(self,image,x,y,width==None,height=None,mask=None)

顏色設(shè)置

canvas.setFillColorCMYK(c,m,y,k)
canvas.setStrikeColorCMYK(c,m,y,k)
canvas.setFillColorRGB(r,g,b)
canvas.setStrokeColorRGB(r,g,b)
canvas.setFillColor(acolor)
canvas.setStrokeColor(acolor)
canvas.setFillGray(gray)
canvas.setStrokeGray(gray)

字體

canvas.setFont(psfontname,size,leading=None)

圖形線條

canvas.setLineWidth(width)
canvas.setLineCap(mode)
canvas.setLineJoin(mode)
canvas.setMiterLimit(limit)
canvas.setDash(self,array=[],phase=0)

修改坐標(biāo)

canvas.setPageSize(pair)
canvas.transForm(a,b,c,d,e,f)
canvas.translate(dx,dy)
canvas.scale(x,y)
canvas.rotate(theta)
canvas.skew(alpha,beta)

保存版本

可用于保存現(xiàn)在的字體、圖像、文字格式等

canvas.saveState()
canvas.restoreState()
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容