给定一个以SVG preserveAspectRatio为中心的图像,如何找出在图像周围添加多少填充以使其居中?
我需要在一个以preserveAspectRatio:xMidYMid为中心的现有图像上叠加一些其他图像。除非我知道图像的边界是什么,否则我无法在它上面绘画。
以下是一个简单示例:http://jsfiddle.net/ddehghan/zz4ppyhe/
var s = Snap("#svg");
var image = s.image('https://upload.wikimedia.org/wikipedia/en/2/24/Lenna.png',
0, 0, '400px', '200px')
.attr('preserveAspectRatio', "xMidYMid meet");
更新
不幸的是getBBox()看到:http://jsfiddle.net/zz4ppyhe/3/不返回图像的位置,而是返回包含空格的蓝线。我认为CSS中也存在同样的问题。当图像居中或被底层移动时,没有与Javascript最终位置的接口。