我有一个带有 svg 图像的 Context 文本。正如预期的那样,Context 将图像转换为 pdf 并将其包含在内,但在导出的 pdf 中留下了很多空白空间。我该如何摆脱这些空白空间?
mcve.tex:
\starttext
\externalfigure[card.svg][width=56mm, frame=on]
\stoptext
卡片.svg:
<?xml version="1.0" encoding="utf-8" ?>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect fill="white" height="87" rx="10" ry="10" stroke="red" stroke-width="1" width="56" x="0" y="0"/>
</svg>
我这样调用 Context:
context mcve.tex
我认为它使用 Inkscape 将 svg 转换为 pdf;我在 Linux 上使用 Inkscape 1.1.1 (3bf5ae0d25, 2021-09-20)。
答案1
这可能与以下因素有关,也可能无关:问题 1017。如果我手动将 转换.svg
为.pdf
,则仅导出绘图:
for i in *.svg
do
base=$(basename "$i")
context_name="m_k_i_v_$base.pdf"
inkscape \
--export-filename="$context_name" \
--export-type=pdf \
--export-area-drawing \
"$i"
done
似乎我的上下文有点旧了;根据源代码ConTeXt 已经可以处理这个问题了。遗憾的是,Ubuntu 21.10 仍然附带旧代码,尚不支持 Inkscape 1.1,因此我将坚持我的解决方法。