¿Cómo puedo abrir una imagen en un lienzo? que esta codificado
Estoy usando el
var strDataURI = oCanvas.toDataURL();
La salida es la imagen codificada en base 64. ¿Cómo puedo dibujar esta imagen en un lienzo?
¿Quiero usar strDataURI
y crear la imagen? ¿Es poosible?
Si no es así, ¿cuál puede ser la solución para cargar la imagen en un lienzo?
Respuestas:
Dada una URL de datos, puede crear una imagen (ya sea en la página o simplemente en JS) configurando el
src
de la imagen en su URL de datos. Por ejemplo:El
drawImage()
método de HTML5 Canvas Context le permite copiar toda o una parte de una imagen (o lienzo o video) en un lienzo.Podrías usarlo así:
Editar : sugerí anteriormente en este espacio que podría no ser necesario usar el
onload
controlador cuando se trata de un URI de datos. Según las pruebas experimentales de esta pregunta , no es seguro hacerlo. La secuencia anterior (crear la imagen, configuraronload
para usar la nueva imagen y luego configurar)src
es necesaria para que algunos navegadores usen los resultados con seguridad.fuente
canvas
elemento en su página con esa identificación? ¿Te has asegurado quemyCanvas
no es nulo? Si aún tiene problemas, publique su propia pregunta o visite el canal de chat de JavaScript .fuente
Quizás este violín ayudaría a ThumbGen - jsFiddle Utiliza File API y Canvas para generar dinámicamente miniaturas de imágenes.
fuente
Es posible que desee borrar la imagen anterior antes de configurar una nueva.
También necesita actualizar el tamaño del lienzo para una nueva imagen.
Así es como lo estoy haciendo en mi proyecto:
fuente
en javascript, usando jquery para la selección de ID de lienzo:
html5:
fuente