Saturday, January 17, 2026
HomeLanguagesPyCairo – How to get SVG unit?

PyCairo – How to get SVG unit?

In this article, we will see how we can get SVG unit in pycairo using python. SVG unit is used to describe the units valid for coordinates and lengths in the SVG specification

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) is with a modern web browser like Chrome, Firefox, Edge, or Internet Explorer—nearly all of them should provide some sort of rendering support for the SVG format.

These are the following SVG units in Pycairo

  1. USER User unit, a value in the current coordinate system. If used in the root element for the initial coordinate systems it corresponds to pixels
  2. EM The size of the element’s font
  3. EX The x-height of the element’s font
  4. PX Pixels (1px = 1/96th of 1in)
  5. IN Inches (1in = 2.54cm = 96px)
  6. CM Centimeters (1cm = 96px/2.54)
  7. MM Millimeters (1mm = 1/10th of 1cm)
  8. PT Points (1pt = 1/72th of 1in)
  9. PC Picas (1pc = 1/6th of 1in)
  10. PERCENT Percent, a value that is some fraction of another reference value.

In order to use this we will use get_document_unit with SVG surface object

Syntax : get_document_unit()

Argument : It takes no argument

Return : It returns SVG unit but when printed it shows value associated with it.

Python3




# importing pycairo
import cairo
 
# creating a SVG surface
# here geek95 is file name & 700, 700 is dimension
with cairo.SVGSurface("geek95.svg", 700, 700) as surface:
    # creating a cairo context object
    context = cairo.Context(surface)
 
    # creating a rectangle(square)
    context.rectangle(100, 100, 100, 100)
 
    # setting color of the context
    context.set_source_rgba(0.4, 1, 0.4, 1)
 
    # stroke out the color and width property
    context.stroke()
 
    # getting the svg unit
    value = surface.get_document_unit()
 
# printing the SVG unit
print("SVG unit= " + str(value))


Output:

SVG unit= 7
Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32474 POSTS0 COMMENTS
Milvus
118 POSTS0 COMMENTS
Nango Kala
6846 POSTS0 COMMENTS
Nicole Veronica
11977 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12063 POSTS0 COMMENTS
Shaida Kate Naidoo
6985 POSTS0 COMMENTS
Ted Musemwa
7219 POSTS0 COMMENTS
Thapelo Manthata
6933 POSTS0 COMMENTS
Umr Jansen
6911 POSTS0 COMMENTS