
    p"h	                     :   S r SSKJrJr  \rSrSrSrSrSSKJ	r	  SS	K
Jr   " S
 S\5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      r\" S5      rg)ar  
A Python library to create SVG drawings.

SVG is a language for describing two-dimensional graphics in XML. SVG allows
for three types of graphic objects: vector graphic shapes (e.g., paths
consisting of straight lines and curves), images and text. Graphical objects
can be grouped, styled, transformed and composed into previously rendered
objects. The feature set includes nested transformations, clipping paths,
alpha masks, filter effects and template objects.

SVG drawings can be interactive and dynamic. Animations can be defined and
triggered either declarative (i.e., by embedding SVG animation elements in
SVG content) or via scripting.

.. seealso:: http://www.w3.org/TR/SVG11/intro.html#AboutSVG

a simple example::

    import svgwrite

    dwg = svgwrite.Drawing('test.svg', profile='tiny')
    dwg.add(dwg.line((0, 0), (10, 0), stroke=svgwrite.rgb(10, 10, 16, '%')))
    dwg.add(dwg.text('Test', insert=(0, 0.2)))
    dwg.save()

SVG Version
-----------

You can only create two types of SVG drawings:

* *SVG 1.2 Tiny Profile*, use Drawing(profile= ``'tiny'``)
* *SVG 1.1 Full Profile*, use Drawing(profile= ``'full'``)

   )__version__versionzmozman <me@mozman.at>zManfred Moitzizme@mozman.atz	2014-2019    )Drawing)rgbc                   .    \ rS rSrSrSS jrS rS rSrg)	Unit9   zAdd units to values.
    c                     Xl         g)z;Unit constructor

:param str unit: specify the unit string
N_unit)selfunits     C/var/www/html/env/lib/python3.13/site-packages/svgwrite/__init__.py__init__Unit.__init__<   s	    
 
    c                 &    U< U R                   < 3$ )z1add unit-string to 'other'. (e.g. 5*cm => '5cm') r   )r   others     r   __rmul__Unit.__rmul__C   s    

++r   c                 n    SR                  U Vs/ s H  o"< U R                  < 3PM     sn5      $ s  snf )zeAdd unit-strings to all arguments.

:param args: list of values
    e.g.: cm(1,2,3) => '1cm,2cm,3cm'
,)joinr   )r   argsargs      r   __call__Unit.__call__G   s.     xxtDt3

3tDEEDs   2r   N)cm)	__name__
__module____qualname____firstlineno____doc__r   r   r   __static_attributes__ r   r   r	   r	   9   s    ,Fr   r	   r   mmemexpxinpcpt%deggradradHzkHzN)r$   r   r   VERSION
__author__AUTHOR_NAMEAUTHOR_EMAILCYEARsvgwrite.drawingr   svgwrite.utilsr   objectr	   r   r'   r(   r)   r*   inchr,   r-   percentr/   r0   r1   r2   r3   r&   r   r   <module>r>      s   !D *
$
 % F6 F. 
$Z	$Z	$Z	$Z	$ZDz	$Z	$Z
s)
5kF|
5k	$Z
5kr   