2

あるキャンバス (あるマシン) を別のキャンバス (別のマシン) にコピーする最適な方法は何ですか。

以下の方法は知っていますが、キャンバス情報が非常に短い間隔で送信されると、パフォーマンスの問題が発生すると思います。

canvas.toDataURL("image/png");

座標情報を送ると聞いたことがあります。皆さん、それに光を当てることができますか?または、より良い方法があれば、私を助けてください。

4

1 に答える 1

0

私の提案は、キャンバスに描画されたものの個別のモデルをjavaスクリプトオブジェクトとして保持することです(描画するすべての長方形に対して「長方形オブジェクト」を保持するなど)。これらの「モデルオブジェクト」ごとにバージョン属性または更新されたフラグがあります。「モデルオブジェクト」とキャンバスの同期を維持し、「モデルオブジェクト」に触れるたびにバージョンを更新するか、更新されたフラグを設定します。同期するときは、更新された「モデルオブジェクト」のみを転送します。これは基本的に、人々が「座標」の更新について話すときの意味です。

もちろん、これは、描画するアイテムの量、更新されるアイテムの数、およびキャンバスの大きさによって異なります。ある時点で、画像を送信する方が効率的かもしれません。写真を細かく切り分けて更新された部分だけを送信することでそれを最適化することもできますが、得られた結果を自分でデコードする必要があると思います.toDataURL()

于 2012-06-27T13:35:38.600 に答える