§ w<ˆjõ)ãó~—dZddlmZddlmZmZmZddlmZddl m Z m Z m Z ddl m Z mZddlmZGd„d ee e ¦«ZGd „d e¦«ZGd „d ee e e¦«ZGd„dee e ¦«ZdZGd„de¦«ZGd„dee e e ¦«ZGd„dee e ¦«ZGd„de¦«ZGd„de¦«ZdS)aŒ The **container** module provides following structural objects: * :class:`svgwrite.Group` * :class:`svgwrite.SVG` * :class:`svgwrite.Defs` * :class:`svgwrite.Symbol` * :class:`svgwrite.Marker` * :class:`svgwrite.Use` * :class:`svgwrite.Hyperlink` * :class:`svgwrite.Script` * :class:`svgwrite.Style` set/get SVG attributes:: element['attribute'] = value value = element['attribute'] é)Úurlopen)Ú font_mimetypeÚ base64_dataÚfind_first_url)Ú BaseElement)ÚViewBoxÚ TransformÚXLink)Ú PresentationÚClipping)ÚCDATAcó—eZdZdZdZdS)ÚGroupa\ The **Group** (SVG **g**) element is a container element for grouping together related graphics elements. Grouping constructs, when used in conjunction with the **desc** and **title** elements, provide information about document structure and semantics. Documents that are rich in structure may be rendered graphically, as speech, or as braille, and thus promote accessibility. A group of elements, as well as individual objects, can be given a name using the **id** attribute. Named groups are needed for several purposes such as animation and re-usable objects. ÚgN©Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú elementname©óúd/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib/python3.11/site-packages/svgwrite/container.pyrr"s€€€€€ð ð ð€K€K€Krrcó—eZdZdZdZdS)ÚDefszã The **defs** element is a container element for referenced elements. For understandability and accessibility reasons, it is recommended that, whenever possible, referenced elements be defined inside of a **defs**. ÚdefsNrrrrrr3s€€€€€ððð€K€K€Krrcó—eZdZdZdZdS)ÚSymbola� The **symbol** element is used to define graphical template objects which can be instantiated by a **use** element. The use of **symbol** elements for graphics that are used multiple times in the same document adds structure and semantics. Documents that are rich in structure may be rendered graphically, as speech, or as braille, and thus promote accessibility. ÚsymbolNrrrrrr;s€€€€€ððð€K€K€Krrcó(‡—eZdZdZdZdˆfd„ ZˆxZS)ÚMarkera) The **marker** element defines the graphics that is to be used for drawing arrowheads or polymarkers on a given **path**, **line**, **polyline** or **polygon** element. Add Marker definitions to a **defs** section, preferred to the **defs** section of the **main drawing**. ÚmarkerNc óú•—tt|¦«jd i|¤Ž|�|d|d<|d|d<|�|d|d<|d|d<|�||d<d |jvr| ¦«|d <dSdS) zÿ :param 2-tuple insert: reference point (**refX**, **refY**) :param 2-tuple size: (**markerWidth**, **markerHeight**) :param orient: ``'auto'`` | `angle` :param extra: additional SVG attributes as keyword-arguments NrÚrefXéÚrefYÚ markerWidthÚ markerHeightÚorientÚidr)Úsuperr!Ú__init__ÚattribsÚnext_id)ÚselfÚinsertÚsizer)ÚextraÚ __class__s €rr,zMarker.__init__Qs£ø€ð %��f�dÑÔÔ$Ð-Ð- uÐ-Ð-Ð-Ø Ð Ø! !œ9ˆD�‰LØ! !œ9ˆD�‰LØ Ð Ø"& q¤'ˆD�Ñ Ø#'¨¤7ˆD�Ñ Ø Ð Ø#ˆD�‰NØ �t”|Ð #Ð #ØŸš™œˆD�‰JˆJˆJð $Ð #r)NNN©rrrrrr,Ú __classcell__©r3s@rr!r!FsNø€€€€€ððð€Kð(ð(ð(ð(ð(ð(ð(ð(ð(ð(rr!zF@font-face{{ font-family: "{name}"; src: url("{data}"); }} có@‡—eZdZdZdZd ˆfd„ Zd„Zd„Zd„Zd„Z ˆxZ S) ÚSVGa¢ A SVG document fragment consists of any number of SVG elements contained within an **svg** element. An SVG document fragment can range from an empty fragment (i.e., no content inside of the **svg** element), to a very simple SVG document fragment containing a single SVG graphics element such as a **rect**, to a complex, deeply nested collection of container elements and graphics elements. ÚsvgNc ó•—tt|¦«jd i|¤Ž|�|d|d<|d|d<|�|d|d<|d|d<t|¬¦«|_| |j¦«dS) zÁ :param 2-tuple insert: insert position (**x**, **y**) :param 2-tuple size: (**width**, **height**) :param extra: additional SVG attributes as keyword-arguments NrÚxr%ÚyÚwidthÚheight)Úfactoryr)r+r8r,rrÚadd)r/r0r1r2r3s €rr,z SVG.__init__ws”ø€ð "��c�4ÑÔÔ!Ð*Ð* EÐ*Ð*Ð*Ø Ð Ø˜qœ ˆD�‰Iؘqœ ˆD�‰IØ Ð Ø  œGˆD�‰MØ! !œWˆD�‰Nå Ð&Ñ&Ô&ˆŒ Ø �Š�”ÑÔÐÐÐrcóP—|j t|¦«¦«S)z  Add