SVG视口框架居中缩放(Raphael)

5
我尝试使用viewBox和鼠标滚轮放大Raphael画布,这里是JSFiddle代码。
虽然我成功了,但现在我想在中心放大而不知道从哪里开始。我猜应该更改viewBox的x和y坐标。我已经试过在handle(delta)函数中写下以下代码:
x = paper.width - viewBoxWidth;
y = paper.height - viewBoxHeight;
paper.setViewBox(x,y,viewBoxWidth,viewBoxHeight);

但是没有起作用。我会感激任何帮助。谢谢!

由于您的问题已在邮件列表上得到解答,因此我将在此处粘贴以供将来参考:https://groups.google.com/forum/#!topic/raphaeljs/K-84cOe8ZP8 - Elbert Alias
1个回答

4

缩小视图:

var tempViewBoxWidth = viewBoxWidth;
var tempViewBoxHeight = viewBoxHeight;

viewBoxWidth /= 1.10;
viewBoxHeight /=1.10;

viewBoxX -= (viewBoxWidth - tempViewBoxWidth) / 2;
viewBoxY -= (viewBoxHeight - tempViewBoxHeight) / 2; 

paper.setViewBox(viewBoxX, viewBoxY, viewBoxWidth, viewBoxHeight, false);

为什么要除以 1.10 - Amicable

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接