Zeichnen anstelle von Leinwand schneiden.
Path
und ArcPath
haben eine Eigenschaft namens isClipPath
, sodass Sie damit einen Clip-Pfadbereich erstellen und hinzufügen
können. Fügen Sie zuerst den Clip-Pfad hinzu und fügen Sie dann den Inhalt hinzu.
Standardmäßig werden "Strich" und "Füllen" gezeichnet. Wenn Sie es also nur ausschneiden möchten, löschen Sie es manuell.
clip.py
from reportlab.graphics.shapes import *
width = 300
height = 200
d = Drawing(width,height)
clip = Path(fillColor=None, strokeColor=None, isClipPath=True)
clip.moveTo(0,0)
clip.lineTo(width,0)
clip.lineTo(width,height)
clip.lineTo(0,height)
clip.closePath()
d.add(clip)
Selbst mit den gleichen Formen kann man so etwas wie "Rect" nicht machen. Ich wünschte ich könnte es tun.