0

以下の例でアクティブなオブジェクトまたはアクティブなグループを取得するにはどうすればよいですか?? 私はこれを使用しています。このフィドルでは、テキストボックスの値が変更されるたびに、湾曲したテキストを作成しようとしています。サイズとすべての変更を適用するには、キャンバスのアクティブなオブジェクトを取得する必要がありますが、アクティブなグループまたは要素が機能しません。これどうやってするの ?

フィドル :: http://jsfiddle.net/NHs8t/8/

フィッフルのスニペットの下::

        var act = canvas.getActiveGroup();

        var obj = canvas.getActiveObject();
     if(!obj)
     {
        console.log('object not Selected');
     }else
     {
        console.log('Object  selected');
     }
     if (!canvas.getActiveGroup()) 
     {
        console.log('if part executed--object not selected');

        curvedText[cur] = new CurvedText(canvas, {});
        curvedText[cur].center();
        curvedText[cur].setText($(this).val());
        cur++;


    } else {
        console.log('Else part executed-object selected');
        act.setText($(this).val());

    }
4

1 に答える 1

1

getActiveGroupバギーのようです。getActiveObjectただし、アクティブなグループを返すので、それで行くことができます。setText問題は、グループを介してメソッドにアクセスできないためCurvedText、グループ内のインスタンスへの参照を保持する必要があることです。

function CurvedText( canvas, options ){

  ...

  this.group.curvedText = this;
}

その後

var act = canvas.getActiveObject();
act.curvedText.setText($(this).val());

私がここでやったように。

于 2013-09-13T11:16:40.250 に答える