2012-01-26 152 views

回答

2

您可以通过路径绘制形状来切割一个洞。 这是被称为甜甜圈洞的技术,你可以看到我的索引 页面上一个例子,如果这看起来困难不 看到的信息数据库和技术标甜甜圈洞 我的网站指数是用来 http://www.irunmywebsite.com/ 错误是。 现在你可以找到一个有多个夹路径(想象一下,通过几个孔看到视图} 转盘和缩略图持有人只是一个路径... See the Raphael Crousel

一个更好的例子,我下面包括,中央蓝色区域有几个孔,切成它。这具有多功能的使用。 这是我所说的DOM/SVG的混合解决方案的一部分。

Cut multi purpose holes for a variety of reasons

1

我不认为你可以通过拉斐尔做到这一点。您可以通过直接操作DOM来完成,但是您将无法为该元素调用Raphael方法。

我发现Raphael已经过时了,现在IE支持SVG了。你可以使用普通的javascript和SVG规范来做更多的事情。

+7

我们并不是很多人只为最新的浏览器写作,所以我认为这个过时的术语有点过于强大。另一个考虑是抽象;出于同样的原因,许多人发现使用jQuery(或任何你最喜欢的js库)比裸javascript更有效率,我认为在SVG和Canvas之上有足够的空间来存放库。尽管在这最后一点,还有很多其他人可以选择。 –

+3

我同意抽象,但我更喜欢那些与DOM一起工作而不是他们自己的对象的库。像拉斐尔这样的图书馆一直只支持原始规范中的一部分功能,而且还有一个缺点,就是不得不等待新版本修复bug或添加新功能。有时候,功能的子集足以让某些东西运行,有时不是。 – mihai

0

如果像在示例图像,这是一个光栅图像( pnggifjpg ...位图像素图像)你试图剪辑,这实际上很简单。在Raphael 2中,您只需将填充设置为指向图像文件即可。它使用它作为背景图像。

如果您想使用Raphael路径剪裁图像或照片,或者为剪贴蒙版或图像文件的剪辑路径,请将图像设置为路径的填充。

somepath.attr({fill: 'someimage.png'});

限制(AFAIK):

  • 只有一个每路径图像
  • 每个图像只有一个路径
  • 比如像背景位置AREN”(使用化合物为复杂的遮罩路径) t easy - see this question for more
  • 我认为这是不可能停止图像重复