Gio*_*hal 4 python xslt awk svg sed
我希望能够将 SVG 文档转换为黑白。我的尝试是使用 'sed' 的以下 Makefile 脚本:
%.bw.svg: %.svg
sed '/stroke:none/!s/stroke:[^;\"]*/stroke:black/g' $< > $@
Run Code Online (Sandbox Code Playgroud)
这适用于线条等,但不适用于填充物。基本上,如果笔触不可见(无),那么我将其转换为黑色。我想对填充物做同样的事情,如果不是白色或不可见,则转换为黑色。
我想知道以更好的方式做这样的事情是否太复杂,也许使用 XSLT,但我没有经验。任何人都可以帮忙吗?
我会尝试的两个选项:
1- Inkscape 似乎能够做到 - Inkscape Convert
2- SVG 支持 SVG 元素上的 ColorProfile 属性,该属性可以引用 ICC 颜色配置文件。我会尝试在那里引用 GrayScale 颜色配置文件,看看会发生什么。看起来这里有一个可用。