这种组合可能吗?我有一个复古风格的spritesheet,但我想使用SVG来应用一些效果,如阴影,轮廓和其他东西。不要质疑它。
我知道canvas是另一种选择,但对于这个项目,我更喜欢使用SVG。然而,一个主要问题是:从spritesheet中获取单个精灵。另外,我使用1x1像素精灵,但扩大spritesheet通过隐藏的画布使它们6x6,所以我也使用图像元素而不是链接到页面外的图像。
是否可以选择要在SVG中使用的图像区域? SVG图像元素似乎没有提供这样的选项。
答案 0 :(得分:4)
您可以在图片上使用clipping path,剪裁到您想要的内容。例如:
http://phrogz.net/svg/image-spritesheet.svg
如果您是only targeting Firefox,则可以使用:image-spritesheet-simple.svg
或者,您可以将<image>
放入SVG中的新<svg>
元素中。内部<svg>
建立了一个新的视口,然后您可以使用viewBox
来仅显示图像中的矩形区域(更像是普通的精灵图片)。