REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 3.00 KB
Close
/opt/cloudlinux/venv/lib64/python3.11/site-packages/svgwrite/extensions/inkscape.py
Text
Base64
# Copyright (c) 2018 Manfred Moitzi # License: MIT License # based on work of: # Copyright (c) 2018 Antonio Ospite <ao2@ao2.it> from svgwrite.data.types import SVGAttribute INKSCAPE_NAMESPACE = 'http://www.inkscape.org/namespaces/inkscape' SODIPODI_NAMESPACE = 'http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' INKSCAPE_ATTRIBUTES = { 'xmlns:inkscape': SVGAttribute('xmlns:inkscape', anim=False, types=[], const=frozenset([INKSCAPE_NAMESPACE])), 'xmlns:sodipodi': SVGAttribute('xmlns:sodipodi', anim=False, types=[], const=frozenset([SODIPODI_NAMESPACE])), 'inkscape:groupmode': SVGAttribute('inkscape:groupmode', anim=False, types=[], const=frozenset(['layer'])), 'inkscape:label': SVGAttribute('inkscape:label', anim=False, types=frozenset(['string']), const=[]), 'sodipodi:insensitive': SVGAttribute('sodipodi:insensitive', anim=False, types=[], const=frozenset(['true', 'false', '0', '1'])) } def _setup_validator(validator): # setup already done? if 'xmlns:inkscape' in validator.attributes: return validator.attributes.update(INKSCAPE_ATTRIBUTES) elements = validator.elements # extend SVG attributes elements['svg'].valid_attributes = \ { 'xmlns:inkscape', 'xmlns:sodipodi', } | elements['svg'].valid_attributes # extend group attributes elements['g'].valid_attributes = \ { 'inkscape:groupmode', 'inkscape:label', 'sodipodi:insensitive', } | elements['g'].valid_attributes GROUP_MODE = 'inkscape:groupmode' LABEL = 'inkscape:label' INSENSITIVE = 'sodipodi:insensitive' class Inkscape(object): """ Extension to support SOME Inkscape features. """ def __init__(self, drawing): self.svg = drawing _setup_validator(drawing.validator) drawing['xmlns:inkscape'] = INKSCAPE_NAMESPACE drawing['xmlns:sodipodi'] = SODIPODI_NAMESPACE def layer(self, label=None, locked=False, **kwargs): """ Create new Inkscape layer. Args: label: layer name as string locked: when set to True, make objects at this layer unselectable """ new_layer = self.svg.g(**kwargs) new_layer[GROUP_MODE] = 'layer' if label is not None: new_layer[LABEL] = label if locked: new_layer[INSENSITIVE] = 1 return new_layer
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 1 × Files: 3
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
__pycache__
DIR
-
drwxr-xr-x
2026-02-06 08:01:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
inkscape.py
3.00 KB
lrw-r--r--
2026-01-20 13:01:47
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
shapes.py
3.64 KB
lrw-r--r--
2026-01-20 13:01:47
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.py
93 B
lrw-r--r--
2026-01-20 13:01:47
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).