meerk40t / svgelements

SVG Parsing for Elements, Paths, and other SVG Objects.
MIT License
124 stars 28 forks source link

How to obtain images in the mask #251

Open more-strive opened 2 months ago

more-strive commented 2 months ago

test image

source = io.StringIO(svg_image)
svg = SVG.parse(source)
for element in svg.elements():
    if isinstance(element, SVGImage):
          try:
              element.load(os.path.dirname('./'))
              mask = element.values.get('mask')
              if mask:
                  mask_name = mask.replace('url', '').replace('(', '').replace(')', '').replace('#', '')
                  mask_object = svg.objects.get(mask_name)
                  # mask_object = { image:  ...}
              url = element.url
          except OSError:
              pass