3

I want to export a shapefile to SVG. It's a simple shapefile from Germany that I downloaded from https://www.eea.europa.eu/ and applied some changes as I wanted. I downloaded SimpleSVG plugin but it raises an error. I tried exporting only the original shapefile but still the error is there.

This is the error I get:

AttributeError: type object 'GeometryType' has no attribute 'LineGeometry' 
Traceback (most recent call last):
  File "/home/fateme/.local/share/QGIS/QGIS3/profiles/default/python/plugins/simplesvg/SimpleSvg.py", line 155, in writeToFile
    output = self.writeSVG()
  File "/home/fateme/.local/share/QGIS/QGIS3/profiles/default/python/plugins/simplesvg/SimpleSvg.py", line 214, in writeSVG
    svg.extend(self.writeVectorLayer(layer, False))
  File "/home/fateme/.local/share/QGIS/QGIS3/profiles/default/python/plugins/simplesvg/SimpleSvg.py", line 336, in writeVectorLayer
    sym = self.createSymbol(feature, symbol, layer)
  File "/home/fateme/.local/share/QGIS/QGIS3/profiles/default/python/plugins/simplesvg/SimpleSvg.py", line 433, in createSymbol
    if QgsWkbTypes.geometryType(geom.wkbType())  == QgsWkbTypes.GeometryType.LineGeometry:
AttributeError: type object 'GeometryType' has no attribute 'LineGeometry'
3
  • 1
    Have you tried converting your shapefile from polygon to line (vector -> geometry tools -> polygons to lines) and then exporting?
    – Erik
    Commented Jul 27, 2021 at 14:35
  • @Erik Yes I tried. I also tried check validity but none of them worked Commented Jul 27, 2021 at 14:43
  • And have you got into contact with the supplier of the plugin or searched for similar bug reports?
    – Erik
    Commented Jul 27, 2021 at 14:50

1 Answer 1

5

For a temporary solution:

  • Navigate to /home/fateme/.local/share/QGIS/QGIS3/profiles/default/python/plugins/simplesvg
  • Open SimpleSvg.py file in a text editor.
  • Find all QgsWkbTypes.GeometryType.LineGeometry text.
  • Change all to 1.
  • Save and restart QGIS.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.