0

ユーザーが絵を描くことができるアプリケーションがありますが、これはすべて正常に機能します。私が抱え続けている問題は、他の人も見たり共有したりできるように、ユーザーの描画を共有できるようにしたいということです。今のところ、このコードを使用してキャンバスを保存しています:

window.location = canvas.toDataUrl();

しかし、これの問題は、画像がクライアント側でのみ生成されることです。これは望ましくありません。私は php/mysql またはサーバー側言語の経験はありませんが、html、css、javascript の経験はあります。とにかく...どんな助けでも大歓迎です

ありがとう

4

3 に答える 3

0

ユーザーがページへのリンクを介して画像を共有する場合に考えられる方法: 一意のキーを使用して画像をデータベースに保存し、ユーザーが他のユーザーと共有するために使用できるようにします。ここで、生成されたキーを受け取り、データベースから画像をロードしてクライアントに返すメソッドを提供する必要があります。
もう 1 つの方法は、すべての html5 ブラウザでサポートされている PNG など、作成した画像をユーザーがダウンロードできるようにすることです。

于 2013-01-27T20:14:52.563 に答える
0

得られる結果は明らかです。HTML5 キャンバスでは、JavaScript から描画することはクライアント側で行われます。図面を共有したい場合は、できることは画像にエクスポートすることです これは役立つかもしれません

私の答えがお役に立てば幸いです。

于 2013-01-27T20:11:47.027 に答える
0

キャンバスで toDataURL を呼び出すだけで、base64 でエンコードされた画像を取得できます。これをブラウザのアドレス バーに渡して画像をレンダリングできます。

var ctx = document.getElementById("canvas").getContext("2d");
var image = document.getElementById("someImage");
ctx.fillRect(100,100,100,100);
image.src = canvas.toDataURL("image/png");

var link = document.getElementById("link");

link.addEventListener('click', function(){
    window.open(canvas.toDataURL("image/png"), '_blank');
});

http://jsfiddle.net/LvZQF/

于 2013-01-27T20:37:28.357 に答える