1

在 Raphael 中,您可以通过以下方式加载图像:

var image_one=paper.image("some_url", x,y,width,height);

但问题是我正在拼接图像,我需要其中的几个剪辑,最好不要重新加载原始图像。这是因为通过 http 仅加载单个大图像比加载许多小图像要快。显然,每次上传都有一些开销可能会变得相当大。

但无论如何,在将 Raphael 图像加载到 ram 后,如何制作它的副本?我已经尝试过:

var image_two=image_one;

但这似乎只是创建了另一个指向图像的链接。

4

1 回答 1

1

这种内部复制是通过Raphael 的 .clone()完成的,就这么简单:

var newElem = oldElem.clone();

Element.clone()适用于包括路径、图像、矩形、圆圈在内的元素......但不适用于集合


这是一个简单的演示 - 根据需要进行拼接。

http://jsbin.com/ufayuw/1/edit

如果您希望在需要之前隐藏克隆,请使用.hide()

于 2013-07-11T13:34:52.583 回答