Como se muestra en this example, se puede aplicar un fondo a través de un elemento canvas
CSS y este fondo no se considera parte de la imagen, por ejemplo, al recuperar los contenidos a través de toDataURL()
.
Éstos son los contenidos del ejemplo, por desbordamiento de pila posteridad:
<!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>
Esto requiere que el usuario registre los comandos de dibujo del usuario y 'replay' ellos en un lienzo en blanco para extraer los resultados backgroundless. Es mucho más fácil simplemente no dibujar la imagen de fondo en primer lugar para que pueda extraer el resultado sin problemas. – Phrogz
de hecho sería. de alguna manera me perdí la última frase de su pregunta o lo agregó? – oberhamsi