Как установить фоновое изображение холста html 5 на .png изображение
Я хотел бы знать, как можно установить фоновое изображение холста в файл .png. Я не хочу добавлять изображение в заднюю часть холста и сделать прозрачный холст.
Я хочу, чтобы пользователь мог на самом деле рисовать на этом холсте, когда фон был .png-изображением, поэтому я могу извлечь его позже как .png с чертежами, которые пользователь сделал.
Ответы
Ответ 1
Как показано в в этом примере, вы можете применить фон к элементу canvas
через CSS, и этот фон не будет считаться частью изображение, например при извлечении содержимого через toDataURL()
.
Вот содержимое примера, для потомков:
<!DOCTYPE HTML>
<html><head>
<meta charset="utf-8">
<title>Canvas Background through CSS</title>
<style type="text/css" media="screen">
canvas, img { display:block; margin:1em auto; border:1px solid black; }
canvas { background:url(lotsalasers.jpg) }
</style>
</head><body>
<canvas width="800" height="300"></canvas>
<img>
<script type="text/javascript" charset="utf-8">
var can = document.getElementsByTagName('canvas')[0];
var ctx = can.getContext('2d');
ctx.strokeStyle = '#f00';
ctx.lineWidth = 6;
ctx.lineJoin = 'round';
ctx.strokeRect(140,60,40,40);
var img = document.getElementsByTagName('img')[0];
img.src = can.toDataURL();
</script>
</body></html>
Ответ 2
Вы можете указать фоновое изображение в css:
#canvas { background:url(example.jpg) }
он покажет вам изображение задней поверхности холста
Ответ 3
Вы можете нарисовать изображение на холсте и позволить пользователю нарисовать поверх него.
Функция drawImage()
поможет вам в этом, см. https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Canvas_tutorial/Using_images
Ответ 4
Вы можете использовать этот плагин, но для целей печати я добавил некоторый код, например
<button onclick="window.print();">Print</button>
и для сохранения изображения <button onclick="savePhoto();">Save Picture</button>
function savePhoto() {
var canvas = document.getElementById("canvas");
var img = canvas.toDataURL("image/png");
window.location = img;}
проверить этот плагин
http://www.williammalone.com/articles/create-html5-canvas-javascript-drawing-app