如何使用 W3C SVG 测试套件?

How to use W3C SVG test suite?

我写了一个脚本来测试几个光栅化程序,通过使用 official W3C SVG test suite 并逐像素比较光栅化的 png 和预期的 png。

问题是,对于 v.1.1 第一版 (2011) 和 v.tiny 1.2 (2008) 测试套件,在很多图像中矢量与预期的 png 不匹配,因为修订号是不一样,造成很多误报(90%以上),like this one.

但是 v.1.1 第一版测试套件没问题。

我可以对 png 进行中继以删除带有修订号的区域,但这是一个非常愚蠢的解决方案。

那么我应该通过哪个 png 来比较光栅化矢量?

谢谢。

将来我们将把这些 SVG 2 测试(并编写新测试)转换为 web-platform-tests 项目中的引用测试和脚本测试。 SVG 1.1 测试此时未维护。

如果您确实需要最新的 PNG 参考图像,您可以重新生成它们。它们是使用 Batik's command line SVG to PNG conversion tool. In the SVG Working Group's old CVS repository 生成的,有脚本 (script/generate_reference_images.pl) 进行转换和一组 SVG 文件使用 (imagePatches/) 转换我们知道 Batik 没有的测试正确使用原始标记。

我已经压缩了 SVG 1.1 第二版测试套件源和 put them here 以防您想尝试重新生成图像。

由于一些原因,这个问题没有非 derpy 解决方案。这次的测试图像绝不是参考测试(也就是说,它们不是逐像素匹配)。另外,后来的测试套件中出现的一些测试未被接受为合法测试,因此未更新修订号。

后面SVG 1.1 2nd edition test suite should be considered canonical, but even that contains some revision-mark errors, like coords-trans-06-t.

这实际上是 SVG WG 需要解决的问题,我会向他们提出。所有已批准测试中的修订号都应与 PNG 引用相匹配,我们可以修改测试以使修订号匹配。