Coverage for lib/lottie/parsers/svg/handler.py: 76%
21 statements
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-20 16:17 +0100
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-20 16:17 +0100
1import enum
2from xml.etree import ElementTree
5class SvgHandler:
6 ns_map = {
7 "dc": "http://purl.org/dc/elements/1.1/",
8 "cc": "http://creativecommons.org/ns#",
9 "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
10 "svg": "http://www.w3.org/2000/svg",
11 "sodipodi": "http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd",
12 "inkscape": "http://www.inkscape.org/namespaces/inkscape",
13 "xlink": "http://www.w3.org/1999/xlink",
14 }
16 def init_etree(self):
17 for n, u in self.ns_map.items():
18 ElementTree.register_namespace(n, u)
20 def qualified(self, ns, name):
21 return "{%s}%s" % (self.ns_map[ns], name)
23 def simplified(self, name):
24 for k, v in self.ns_map.items():
25 name = name.replace("{%s}" % v, k+":")
26 return name
28 def unqualified(self, name):
29 return name.split("}")[-1]
31 def __init__(self):
32 self.init_etree()
35class NameMode(enum.Enum):
36 NoName = 0
37 Id = 1
38 Inkscape = 2