Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SVG视图框中心放大(拉斐尔)_Svg_Zooming_Raphael_Center_Viewbox - Fatal编程技术网

SVG视图框中心放大(拉斐尔)

SVG视图框中心放大(拉斐尔),svg,zooming,raphael,center,viewbox,Svg,Zooming,Raphael,Center,Viewbox,我尝试使用viewBox在Raphael纸上使用鼠标滚轮进行缩放。是JSFIDLE代码 它工作,但现在我想放大中心,我不知道从哪里开始。我想我应该更改viewBox的x和y坐标。 我已经尝试过(在函数句柄(delta)中): 但是没有起作用。我将感谢任何帮助。谢谢大家! 既然您的问题已经在邮件列表中得到了回答,我将把它粘贴到这里以备将来参考: 对于缩小: var tempViewBoxWidth = viewBoxWidth; var tempViewBoxHeight = viewBoxHei

我尝试使用viewBox在Raphael纸上使用鼠标滚轮进行缩放。是JSFIDLE代码

它工作,但现在我想放大中心,我不知道从哪里开始。我想我应该更改viewBox的x和y坐标。 我已经尝试过(在函数句柄(delta)中):


但是没有起作用。我将感谢任何帮助。谢谢大家!

既然您的问题已经在邮件列表中得到了回答,我将把它粘贴到这里以备将来参考:

对于缩小:

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
?如果链接失效怎么办?为什么不重新解释这些发现,用你自己的话来说,然后链接到来源。
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);