キャンバスの描画を PNG 画像に変換するために、Nihilogic の「Canvas2Image」JavaScript ツールを使用しています。ここで必要なのは、このツールが生成する 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画像を実際に作成してサーバーに保存する方法がわかりません. 助けてください!