私は現在、JavaScriptと一緒にHtml5を学んでいます。私はこのようにコーディングしています:ユーザーがアップロードした画像をどのように処理するのですか?
<!DOCTYPE html>
<html>
<head>
<title>Drop images and invert them</title>
<style>
body { margin: 0; body: 0; }
canvas { margin: 30px auto 0; display: block; }
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<script type="text/javascript">
var canvas = document.getElementById('canvas'),
img = document.createElement('img'),
ctx = canvas.getContext('2d');
function xray() {
img.src = 'a1.jpg';
ctx.drawImage(img, 0, 0);
var pixels = ctx.getImageData(0, 0, img.width, img.height);
for (var i = 0; i < pixels.data.length; i += 4) {
pixels.data[i+0] = 255 - pixels.data[i+0];
pixels.data[i+1] = 255 - pixels.data[i+2];
pixels.data[i+2] = 255 - pixels.data[i+1];
}
ctx.putImageData(pixels, 0, 0);
};
</script>
<form onclick="xray()" method="post">
Select a file:<br>
<input type="file" id="test" size="40">
</p>
<div>
<input type="button" value="View XRay">
</div>
</form>
</body>
</html>
(これは私の本の一例です)。
実際にこの例では、スクリプトに与えられる画像はa1.jpg
(この場合)であり、ユーザーがボタンをクリックすると、a1.jpg
ファイルが反転されてレンダリングされます。
私が現在行っていることは、ユーザーにファイルアップロードオプションを与えて、.jpgファイルをアップロードできることです。
ここでは、ユーザーがアップロードしたファイルを処理する必要があります。具体的には、a1.jpg
を処理する必要があります。
私の質問はどうしたらいいですか?それは可能ですか?私はJavascriptをとても使い慣れているので、コミュニティが私を助けてくれれば良いでしょう。
ありがとうございます。
はおそらく、あなたがプロセス、それをこのサーバーサイドを行う必要があります。 – TJHeuvel
ああそう思ったので、クライアント側でこれを行う方法はありませんか? –
私は本当にそれを本当に疑っています。ファイルのアップロードは非常に安全です。明白なセキュリティ問題のために何かを行うことはできません。おそらく、ajaxなどを介してアップロードすることもできます。 – TJHeuvel