Open inert-aesthetic opened 4 months ago
Hello,
When trying to load an SVG resource, I encounter an error saying that msdfgen.exe could not be found. This seems to originate from this line: https://github.com/HeapsIO/heaps/blob/master/hxd/fs/Convert.hx#L404
msdfgen.exe
command("msdfgen.exe", ["-svg", srcPath, "-size", '$size', '$size', "-autoframe", "-o", dstPath]);
To account for Linux systems, something like this could be considered.
class ConvertSVGToMSDF extends Convert { override function convert() { var size = hasParam("size") ? getParam("size") : 128; switch(Sys.systemName()){ case "Windows": command("msdfgen.exe", ["-svg", srcPath, "-size", '$size', '$size', "-autoframe", "-o", dstPath]); case "Linux": command("inkscape", [srcPath, "-o", dstPath]); default: throw("No SVG to PNG converter specified."); } } static var _ = Convert.register(new ConvertSVGToMSDF("svg", "png")); }
This is sufficient for my use-case but doesn't take size into account, and does throw an access violation from Hashlink.
The access violation was a VSHaxe issue and is now not occurring.
The suggested code works well on systems with Inkscape installed.
Hello,
When trying to load an SVG resource, I encounter an error saying that
msdfgen.exe
could not be found. This seems to originate from this line: https://github.com/HeapsIO/heaps/blob/master/hxd/fs/Convert.hx#L404To account for Linux systems, something like this could be considered.
This is sufficient for my use-case but doesn't take size into account, and does throw an access violation from Hashlink.