Nihilogicの "Canvas2Image" JavaScriptツールを使用して、キャンバスの描画をPNG画像に変換しています。今必要なのは、このツールが生成するbase64文字列を、PHPを使用してサーバー上の実際のPNGファイルに変換することです。
手短に言えば、私が現在行っていることは、Canvas2Imageを使用してクライアント側でファイルを生成し、次にbase64でエンコードされたデータを取得して、AJAXを使用してサーバーに送信することです。
// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);
image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);
var url = 'hidden.php',
data = $('#canvasimage').attr('src');
$.ajax({
type: "POST",
url: url,
dataType: 'text',
data: {
base64data : data
}
});
この時点で、「hidden.php」はdata:image / png; base64、iVBORw0KGgoAAAANSUhEUgAABE ...のようなデータブロックを受け取ります。
この時点から、私はかなり困惑しています。私が読んだことから、PHPのimagecreatefromstring関数を使用することになっていると思いますが、実際にbase64でエンコードされた文字列から実際のPNG画像を作成し、サーバーに保存する方法がわかりません。助けてください!