可以在 SVG 文件中使用 IEEE 754 格式浮点数以提高精度

Can use IEEE 754 format floating point in SVG file for precision

SVG 支持使用 IEEE 754 32 位浮点格式 draw/save 高精度对象?

这里的示例 SVG 文件使用大端 IEEE 浮点格式在 (50; 50) 处绘制半径为 100 的黑色圆圈,填充不透明度为 1.0:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<svg version="1.1"  width="100" height="100" >

<circle cx="#42480000" cy="#42480000" r="#42C80000" fill="#000000" fill-opacity="#3F800000" stroke="none" />

</svg>

在Inkscape中打开文件不显示圆圈,轮廓模式也不显示。我想不支持 IEEE float。

之所以要使用这种形式,使用十六进制浮点数在写入文件时转换十进制不会丢失精度,然后在读取文件时转换回十六进制。对使用 SVG 替换 PDF 很有用。

不,SVG 不允许您通过非十进制表示形式指定数字。

好消息是,您不必这样做。您只需指定足够精确的数字来唯一标识您所指的浮点值。如何执行此操作将取决于您的编程语言和 XML/SVG 库,但如果您只想准确表示特定的浮点值,则无需使用非十进制表示。