我写了一个脚本来测试几个光栅化程序,使用official W3C SVG test suite并逐个像素地比较栅格化的png和预期的png。
问题是,对于v.1.1第一版(2011)和v。微小的1.2(2008)测试套件,在很多图像中,向量与预期的png不匹配,因为版本号不是同样,制造大量假阳性(超过90%),like this one。
然而,使用v.1.1第一版测试套件就可以了。
我可以将png中继以删除带有修订号的区域,但这是一个非常狡猾的解决方案。
那么我应该通过哪个png来比较栅格化的矢量?
感谢。
答案 0 :(得分:2)
由于一些原因,这个问题没有非令人沮丧的解决方案。此时的测试图像从未打算进行参考测试(也就是说,它们不是逐像素匹配)。此外,稍后测试套件中出现的某些测试未被接受为合法测试,因此版本号未更新。
后来的SVG 1.1 2nd edition test suite应该被视为规范,但即便如此也包含一些修订标记错误,例如coords-trans-06-t。
这实际上是SVG WG要解决的问题,我会用它们提出来。所有已批准的测试中的修订号应与PNG参考相匹配,我们可以修改测试以使修订号匹配。
答案 1 :(得分:1)
将来我们会将这些测试(并编写新的测试)转换为SVG 2作为web-platform-tests项目中的重新测试和脚本测试。此时SVG 1.1测试没有得到维护。
如果您确实需要最新的PNG参考图像,则可以重新生成它们。它们是使用Batik命令行SVG到PNG转换工具生成的。在SVG Working Group's old CVS repository中,有用于执行转换的脚本(script/generate_reference_images.pl
)和要使用的一组SVG文件(imagePatches/
)来转换我们知道Batik没有的测试使用原始标记。
我已经压缩了SVG 1.1 Second Edition测试套件来源和put them here,以防您想尝试重新生成图片。