当我使用
rsvg-convert.exe -f pdf -o <output-name>.pdf <input-name>.svg
我得到的结果与在Inkscape和Firefox中呈现SVG的方式不同。
这是一个简单的测试SVG:
<svg width="150" height="100" xmlns="http://www.w3.org/2000/svg">
<text y="50" font-size="12" fill="black">Test</text>
<text x="50" y="50" font-size="12pt" fill="black">Test</text>
<text x="100" y="50" font-size="16px" fill="black">Test</text>
</svg>
在Inkscape和Firefox中,middel和正确的文本具有完全相同的大小,因为这些应用程序似乎假定1pt = 1.333333px(这是CSS建议)。但是,rsvg似乎假设1pt = 1.25px,这会导致文本大小不同。如何获得rsvg正确输出(如Inkscape和Firefox)。
我用-p
尝试了选项-d
和96
,但是也没有给出正确的结果。
答案 0 :(得分:1)
在rsvg-convert 2.40.20中可以设置dpi:
rsvg-convert -f pdf --dpi-x=96 --dpi-y=96 -o <output-name>.pdf <input-name>.svg
我还确认将输出格式设置为svg(文本将转换为路径),并在Inkscape中比较高度。
答案 1 :(得分:0)
许多应用程序可以正确处理宽度和高度均为英寸的SVG,例如
<svg width="1.5in" height="1in" xmlns="http://www.w3.org/2000/svg">
</svg>
我对rsvg-convert.exe不熟悉,但这是我尝试的第一件事。根据需要调整宽度和高度。