Inkscape CLI技术求助:选中指定填充色文本并垂直对齐至页面底部
问题描述
我有一个SVG文件,其中包含大量填充色为#0070c0的文本对象,同时还有其他类型的对象。我希望通过CLI仅选中这些具有该填充色的文本对象,然后将它们全部垂直对齐到页面底部。我尝试使用以下命令进行选中操作,但无法通过fill=#0070c0参数实现选中:
inkscape --actions="select-by-selector:text;select-invert;delete;export-plain-svg;export-filename:out.svg;export-do" input.svg
解决方法
精准选中目标文本:使用CSS选择器匹配填充色为
#0070c0的文本元素,替换原命令中的选择器部分:inkscape --actions="select-by-selector:text[fill='#0070c0'];" input.svg若SVG内颜色以RGB格式存储,可改用RGB值匹配:
inkscape --actions="select-by-selector:text[fill='rgb(0, 112, 192)'];" input.svg垂直对齐到页面底部:在选中元素后,添加对齐动作,指定对齐参考为页面:
inkscape --actions="select-by-selector:text[fill='#0070c0'];align:vertical-bottom;align-ref:page;export-plain-svg;export-filename:out.svg;export-do" input.svg排查无效情况:
- 若选择器不生效,检查文本元素的
fill属性是否直接设置,若继承自父元素,可尝试模糊匹配选择器text[fill*='0070c0']。 - 旧版Inkscape可能不支持
align:vertical-bottom,可改用旧语法align-bottom。
- 若选择器不生效,检查文本元素的
内容的提问来源于stack exchange,提问作者aborruso
相关产品推荐
相关产品推荐

