そのため、最初に画像の静止画をキャプチャするために、現在 webcam.js を使用しています。次に、これを隠し変数に渡すための Java スクリプト コードを作成し、ASP.NET コード ビハインドでそれを取得して、データベースに保存できるようにしました。これは私のJavaScriptコードがどのように見えるかです:
<script src="webcam.js"></script>
<script>
function transfer() {
var c = document.getElementById("myCanvas");
var dataURL = myCanvas.toDataURL("image/png");
dataURL = dataURL.replace('data:image/png;base64,', '');
var hf = document.getElementById('<%=hiddensquare.ClientID%>');
hf.value = dataURL;
}
</script>
<script>
function take_snapshot() {
Webcam.snap(function () {
}, myCanvas);
}
</script>
次のように、onclick イベントを使用して呼び出す 2 つの html ボタンでこれらを呼び出しています。
<input id="btnSnap" type="button" value="Take Snapshot" onclick="take_snapshot();" />
<input id="btnTran" type="button" value="Transfer" onclick="transfer();" />
念のため、隠し変数は次のようになります。
<asp:HiddenField ID="hiddensquare" runat="server" Value="" />
これらの 2 つの JavaScript 関数を、2 回ではなく 1 回のボタン クリックで呼び出したいと思います。ただし、たとえば、単に take_snapshot(); を入れるだけでそうしようとすると、移行(); ボタンのonclickの1つで、またはそれらの両方を呼び出す新しいjavascript関数を作成すると、隠し変数に渡されるデータが常にはるかに少なくなります(つまり、1/10よりもはるかに少ないということです)。保存するには、2 つの HTML ボタンを押す必要があります。
ここで何が起こっているのか誰にもわかりませんか?ありがとう!