Open In App

PyCairo – How we can copy the clip rectangle list ?

Last Updated : 23 Jan, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will learn how we can copy the clip rectangle list using PyCairo in Python. Pycairo is a Python module providing bindings for the cairo graphics library. This library is used for creating SVG i.e vector files in python. The easiest and quickest way to open an SVG file to view it (read only) with a modern web browser. Nearly all web browsers support some sort of rendering for the SVG format.  

SVG stands for Scalable Vector Graphics. It basically defines vector-based graphics in XML format. SVG graphics do NOT lose any quality if they are zoomed or resized. Every element and every attribute in SVG files can be animated.

In order to this we will use copy_clip_rectangle_list() method with the Context object

Syntax : context.copy_clip_rectangle_list()

Argument : It takes no arguments

Return : The current clip region as a list of rectangles in user coordinates basically, returns a list of Rectangle

Example :

Python3




# importing pycairo
import cairo
 
# creating a SVG surface
# here geek1 is file name & 700, 700 is dimension
with cairo.SVGSurface("geek1.svg", 700, 700) as surface:
 
    # creating a cairo context object
    context = cairo.Context(surface)
 
    # creating a arc without using closing path method
    context.arc(100, 60, 40, 0, 1*22/7)
 
    # stroke the context to remove the moved pen
    context.stroke()
 
    # creating a arc with using close path method
    context.arc(300, 60, 40, 0, 1*22/7)
 
    # making close path
    context.close_path()
 
    # copying the clip rectangle list
    a = context.copy_clip_rectangle_list()
 
    # stroke the context to remove the moved pen
    context.stroke()
 
# printing message when file is saved
print(a)


Output :

[cairo.Rectangle(x=0.0, y=0.0, width=700.0, height=700.0)]
 


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads