是的,這絕對是1.4到2.0之間的行爲變化 - 它有點功能在多種情況下派上用場。
在另一方面,複製陣列結果的功能是很容易通過擴展拉斐爾2.0做...
Raphael.fn.printArray = function printArray(x, y, string, font, size, letter_spacing, line_height)
{
var result = [];
var cx = x, cy = y;
size = size || 16;
letter_spacing = letter_spacing || 0.2;
line_height = line_height || 1.5;
for (var i = 0; i < string.length; i++)
{
if (string[i] == " ")
{
cx += size;
continue;
}
else if (string[i] == "\n")
{
cx = x;
cy += size * line_height;
continue;
}
var glyph = this.print(0, 0, string[i], font, size).attr({ opacity: 0 });
var glyphBox = glyph.getBBox();
glyph.attr({ transform: "T" + cx + "," + cy, opacity: 1 });
cx += glyphBox.width + (size * letter_spacing);
result.push(glyph);
}
return result;
}
這是不完美的代碼,但有一點細化它可以很容易地填補了國內空白。
看起來不錯,謝謝 – gotofritz 2012-08-10 07:48:30