JSFiddle - React, Tailwind, and code Playground
HTML
<canvas id="canvas1" width="400" height="400"></canvas>
CSS
canvas {
border: 1px solid gray;
}
JavaScript
var can = document.getElementById('canvas1');
var ctx = can.getContext('2d');
var img = new Image();
var w = 1280;
var h = 853;
img.onload = function() {
// step it down only once to 1/6 size:
ctx.drawImage(img, 0, 0, w/6, h/6);
// Step it down several times
var can2 = document.createElement('canvas');
can2.width = w/2;
can2.height = w/2;
var ctx2 = can2.getContext('2d');
// Draw it at 1/2 size 3 times (step down three times)
ctx2.drawImage(img, 0, 0, w/2, h/2);
ctx2.drawImage(can2, 0, 0, w/2, h/2, 0, 0, w/4, h/4);
ctx2.drawImage(can2, 0, 0, w/4, h/4, 0, 0, w/6, h/6);
ctx.drawImage(can2, 0, 0, w/6, h/6, 0, 200, w/6, h/6);
}
img.src = 'http://upload.wikimedia.org/wikipedia/commons/thumb/a/a4/Equus_quagga_%28Namutoni%2C_2012%29.jpg/1280px-Equus_quagga_%28Namutoni%2C_2012%29.jpg'