Just realised you can get larger images, the container (at least on Chrome) has some negative margins when playing around with the size, so the result is smaller. However if you just adjust the width of the smart-frame that works fine. var sf = document.querySelector("smart-frame"); var wedge = document.querySelector("canvas.canvas-wedge"); sf.style.width = wedge.width + "px";