我有一堆 .svgz 文件需要转换为 PDF,或者,如果不可能,先转换为 JPG,然后转换为 PDF。 所有这些文件都使用嵌入在文件中的自定义字体,使用
@font-face
base64,如下所示:
<svg ... >
<defs>
<style type="text/css">
@font-face{font-family:"TZ1gbTn";src:url("data:application/font-woff;charset=utf-8;base64, ... ") format("woff");}
@font-face{font-family:"mDizxCC";src:url("data:application/font-woff;charset=utf-8;base64, ... ") format("woff");}
...
</style>
</defs>
...
</svg>
这些文件可以在 Firefox 中使用自定义字体正确呈现,但是当我使用 Inkscape 在本地打开它们时,字体将替换为默认字体。 我的目标是使用 bash 脚本将它们全部转换为 PDF 或 JPG,但我尝试过的所有选项(imagemagick、inkscape、rsvg、cairosvg)似乎都不起作用,它们都有恢复为默认值的相同问题字体。 那么,是否有一个命令/程序允许我在脚本中执行此操作?或者我在这里遗漏了什么?
提前致谢。
我想我已经找到了最简单的解决方案:
chrome --headless --print-to-pdf="ouput_path" --no-pdf-header-footer input_url