<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>QRコード生成</title>
<script
src="https://cdn.jsdelivr.net/npm/qrcode/build/qrcode.min.js">
</script>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
background-color: gray;
}
.mainbox {
height: 450px;
width: 400px;
background-color: white;
}
/* 生成ボタンのサイズ設定 */
.button_size {
width: 50px;
margin: 8px;
padding: 0px;
box-sizing: border-box;
border: 1px solid #68779a;
background: lightgray;
cursor: pointer;
}
</style>
</head>
<body>
<div class="mainbox">
<center>
<br><h2>QRコード生成</h2>
<label for="url">URLを入力してください</label><br>
<input type="text" size="40" id="url" placeholder=""><br>
<button onclick="generateQRCode()"
class="button_size">生 成</button>
<br><br>
<canvas id="qrCodeCanvas"></canvas>
<script>
/* QRコード生成 */
function generateQRCode() {
const url = document.getElementById("url").value;
const canvas =
document.getElementById("qrCodeCanvas");
if (url) {
QRCode.toCanvas(canvas, url, function (error) {
if (error) console.error(error);
console.log('QRコード生成に成功しました!');
});
} else {
alert("URLを入力してください。");
}
}
</script>
</center>
</div>
</body>
</html>
<!-- index.html -->
実行したらURLを入力して[生成]ボタンをクリックすれば・・・
QRコードが表示されます。
スマホで撮影すれば該当するサイトに飛びます。
もちろん上の様な遊びも可能です(^o^)
以下はPNG書き出しバージョン