イメージをキャンバスにロードしようとしていますが、私の目的は 2 つの機能を提供することです。キャンバス内の画像がどの次元でも大きい場合。できるようになりたい
1)サイズを変更します
2) または、デフォルトで必要に応じてスクロール バーを設定します。
だから私は自分のキャンバスとそれに言及overflow:auto
したcssにdivを追加しました。しかし、画像全体をスクロールすることはできません。試していただけるように、html ファイル全体を貼り付けます。どうすればこれを機能させることができるか教えてください。
<head>
<title>resize and scroll</title>
<meta charset="utf-8">
</head>
<body>
<div id="scroll">
<canvas id="canvas" width="800" height="400"></canvas>
</div>
<input type="button" value=" Resize " onclick="resize()">
<input type="button" value="original" onclick="window.onload()">
<style>
#canvas {
border: 1px solid black;
}
#scroll {
width:800;
height:400;
overflow:auto;
border: solid 1px white;
background-color:white;
}
</style>
<script>
window.onload = function() {
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
context.clearRect(0, 0, canvas.width, canvas.height);
lenna = new Image();
lenna.src = 'http://lunar.thegamez.net/greenenergyimage/biomass-energy-resources/biomass-resources-map-agricultural-residues-resourcesjpg-1200x1000.jpg';
lenna.onload=function() {
context.drawImage(lenna,0,0,lenna.width,lenna.height);
}
}
resize = function() {
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
context.drawImage(lenna,0,0,canvas.width,canvas.height);
}
</script>
</body>
</html>