rx, ry, stroke-linejoin, stroke-miterlimit, href, overflow, clip-path, opacity, transform
I think that most of those are supported but some are probably left overs from Illustrator. I’m pretty sure that “stroke-dasharray” has no effect. What’s weird is that I thought transform isn’t supported at all. However one part of the tonearm in album.svg has a matrix transform which seems to work fine (it rotates the weight rectangle of the tone arm to the correct angle). I also found “transform”, “matrix” and “translate” in the firmware file which indicates that they probably are supported.
Here’s a list of strings that are SVG related within the firmware code:
<span style=“font-family: “Courier New”; font-size: x-small;”>none
<span style=“font-family: “Courier New”; font-size: x-small;”>opacity
<span style=“font-family: “Courier New”; font-size: x-small;”>stroke
<span style=“font-family: “Courier New”; font-size: x-small;”>stroke-width
<span style=“font-family: “Courier New”; font-size: x-small;”>stroke-linecap
<span style=“font-family: “Courier New”; font-size: x-small;”>butt
<span style=“font-family: “Courier New”; font-size: x-small;”>round
<span style=“font-family: “Courier New”; font-size: x-small;”>square
<span style=“font-family: “Courier New”; font-size: x-small;”>inherit
<span style=“font-family: “Courier New”; font-size: x-small;”>miter
<span style=“font-family: “Courier New”; font-size: x-small;”>belvel <- EDIT: WTF, belvel? It should be bevel… Maybe their custom parser has a typo in it.
<span style=“font-family: “Courier New”; font-size: x-small;”>fill
<span style=“font-family: “Courier New”; font-size: x-small;”>transform
<span style=“font-family: “Courier New”; font-size: x-small;”>matrix
<span style=“font-family: “Courier New”; font-size: x-small;”>translate
<span style=“font-family: “Courier New”; font-size: x-small;”>scale
<span style=“font-family: “Courier New”; font-size: x-small;”>width
<span style=“font-family: “Courier New”; font-size: x-small;”>height
<span style=“font-family: “Courier New”; font-size: x-small;”>viewBox
<span style=“font-family: “Courier New”; font-size: x-small;”>line
<span style=“font-family: “Courier New”; font-size: x-small;”>polyline
<span style=“font-family: “Courier New”; font-size: x-small;”>points
<span style=“font-family: “Courier New”; font-size: x-small;”>polygon
<span style=“font-family: “Courier New”; font-size: x-small;”>ellipse
<span style=“font-family: “Courier New”; font-size: x-small;”>circle
<span style=“font-family: “Courier New”; font-size: x-small;”>rect
<span style=“font-family: “Courier New”; font-size: x-small;”>path
So there’s a decent amount of clues now for figuring out what can’t be used and what SVG features should work. Also right now op1svg doesn’t even use XML to parse the input files so I should probably rewrite it to be more robust. That shouldn’t be too hard with this information.
EDIT2: Regardint the “transform” attribute: I’m pretty sure the problem that I had was that the transform was applied to a group element instead of each sub element. Maybe removing the transform from a group and inserting it into all sub-elements will work. That would make life easier…