этого просто не может быть ... если вы используете размер растрового изображения, размер будет не лучшего качества, а меньшего. В лучшем случае вы создадите поддельные пиксели как копии оригинальных пикселей.
Для реального масштаба с изображением (без потери качества) вы должны использовать скалярное изображение, такое как SVG, которого не будет в CANVAS, который использует растровое изображение, но в DOM как обычные элементы.
Очевидно, что вы можете использовать дополнительные параметры с
context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);
где ширина и высота будут конечной шириной и высотой в пикселях (поэтому изображения с более высоким качеством не будут большего размера, а будут иметь больший размер и более низкое качество, потому что пиксели умножаются с использованием поддельных пикселей, клонированных из исходного размера).
Надеюсь, у меня все в порядке.
edit: обратите внимание, что для рисования на холсте необходимо создать объект изображения, например, новое изображение ('imagename.png'); по крайней мере, но вы можете добавить атрибуты alt и другие вещи, такие как id или что-то подобное. для большего количества примеров источник W3schools.org canvas.drawImage (...)