1

サーバー上で jsdom と Raphael Js を使用して SVG マークアップを生成する Node.js プロジェクトがあります。

var paper = window.Raphael(10, 50, 320, 200);
var txt = paper.text(10, 10, 'hello world!');       
console.log( txt.getBBox().toString() ); // Returns: NaN NaN NaN × NaN

一方 ...

var rect = paper.rect(10, 10, 10, 10);
console.log( rect.getBBox().toString() ); // Returns: 10 10 10 × 10

これの原因は何でしょうか。さらに重要なことに、修正はありますか?

4

2 に答える 2

1

TextElement.getBBox() はブラウザーでのみ機能します。サーバー側では使用しないでください。

于 2012-12-30T06:01:51.973 に答える
1

print()パスの配列を生成する RaphaelJsのメソッドを使用する必要があります。配列で使用getBBox()して、境界ボックスを取得できます。

于 2012-01-21T12:10:12.097 に答える