自分のサーバーでホストされている簡単な KineticJS の例を試してみましたが、画像の 4 つのコーナーに 4 つのハンドルを配置する際に問題が発生しました。下のスクリーンショットに示すように、ハンドル ポイントは間違った位置にあります。ただし、ハンドルはjsfiddleで正しく配置されています!
jsfiddle: http://jsfiddle.net/NPB77/
私は KineticJS に非常に慣れていないので、正しい方向に向けることができれば本当に感謝しています。ありがとう!
アップデート
jsfiddle: http://jsfiddle.net/NPB77/1/
addAnchor
関数内に配置することで解決しimageObj.onload()
ます。
var imageObj = new Image();
imageObj.onload = function() {
var thing = new Kinetic.Image({
x: 0,
y: 0,
image: imageObj
});
addAnchor(thingGroup, 0, 0, "topLeft");
addAnchor(thingGroup, imageObj.width, 0, "topRight");
addAnchor(thingGroup, imageObj.width, imageObj.height, "bottomRight");
addAnchor(thingGroup, 0, imageObj.height, "bottomLeft");
thingGroup.add(thing);
stage.draw();
};
imageObj.src = 'http://www.html5canvastutorials.com/demos/assets/darth-vader.jpg';
ただし、画像のサイズを変更する必要があるコーナー ハンドルをドラッグすると、次のエラーが表示されます。
Uncaught TypeError: Cannot call method 'setPosition' of undefined
ここで何がうまくいかなかったのですか?が機能しない理由がわかりgroup.get(".topLeft")
ません。これは範囲の問題ですか?