![xfig 在导出时减小字体大小](https://linux22.com/image/475225/xfig%20%E5%9C%A8%E5%AF%BC%E5%87%BA%E6%97%B6%E5%87%8F%E5%B0%8F%E5%AD%97%E4%BD%93%E5%A4%A7%E5%B0%8F.png)
xfig
(通过fig2dev
)导出时将字体大小缩小 1.3229 倍。
我首先认为这可能与 xfig 中采用的特定点大小有关(xfig/fig2dev 中为 1/80 英寸,而不是 1/72 英寸),但事实并非如此(80/72 = 1.1111)。
实际上,导出为 png 时-F
无法识别该选项fig2dev
,并且会出现错误
Argument -F unknown to png driver.
xfig
使用该选项打开-correct_font_size
也不会产生任何效果(正如fig2dev
无法识别相应的选项所预期的那样-F
)。
作为 MRE,此图文件仅包含一个字母“A”
#FIG 3.2 Produced by xfig version 3.2.6a
Landscape
Center
Metric
A4
100.00
Single
-2
1200 2
4 0 0 50 -1 18 132 0.0000 4 1620 1605 10575 7335 A\001
转换为
<?xml version="1.0" standalone="no"?>
<!-- Creator: fig2dev Version 3.2.6a -->
<!-- CreationDate: 2024-04-02 11:00:16 -->
<!-- Magnification: 1.05 -->
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="106pt" height="104pt"
viewBox="10560 5700 1676 1650">
<g fill="none">
<!-- Text -->
<text xml:space="preserve" x="10575" y="7335" fill="#000000" font-family="Helvetica" font-style="normal" font-weight="bold" font-size="1584" text-anchor="start">A</text>
</g>
</svg>
通过命令
fig2dev -L svg test_A.fig test_A.svg
字体大小在 fig 文件 (132) 中以 pt 表示,但在 svg 文件 (1584,我不知道那里使用了哪些单位) 中则未用 pt 表示。
如果我使用 inkscape 打开 svg 文件,字体大小显示为 99.78302765(132 / 99.78302765 = 1.3229)。
我怀疑这种差异可能是由于点/像素混淆造成的,因为两者之间的比率接近观察到的收缩比率,但并不相同(一个点相当于 1.333 个像素)。
有人知道这种字体大小差异的原因是什么,以及如何解决它?