una subir mostrar imagenes imagen guardar galeria dinamicamente con como cargar array javascript image-processing uploading

subir - mostrar imagen base64 javascript



¿Cargar imagen local en el navegador usando JavaScript? (4)

¡Sí tu puedes! ¡Pero para hacerlo el navegador debe soportar almacenamiento local! Es HTML5 api por lo que la mayoría de los navegadores modernos podrán hacerlo! Recuerde que localstorage solo puede guardar datos de cadena, por lo que debe cambiar las imágenes en una cadena de blob. Tu fuente de imagen se verá así

Este es un fragmento corto que te ayudará!

if(typeof(Storage)!=="undefined"){ // here you can use the localstorage // is statement checks if the image is in localstorage as a blob string if(localStorage.getItem("wall_blue") !== null){ var globalHolder = document.getElementById(''globalHolder''); var wall = localStorage.getItem(''wall_blue''); globalHolder.style.backgroundImage= "url("+wall+")"; }else{ // if the image is not saved as blob in local storage // save it for the future by the use of canvas api and toDataUrl method var img = new Image(); img.src = ''images/walls/wall_blue.png''; img.onload = function () { var canvas = document.createElement("canvas"); canvas.width =this.width; canvas.height =this.height; var ctx = canvas.getContext("2d"); ctx.drawImage(this, 0, 0); var dataURL = canvas.toDataURL(); localStorage.setItem(''wall_blue'', dataURL); }; }}else{//here you upload the image without local storage }

Espero que este breve fragmento sea de utilidad. Recuerde que Localstorage solo guarda datos de cadena para que no pueda

Por cierto, si está utilizando un jcrop para recortar las imágenes, debe guardar el código de la imagen en el formulario y enviarlo al servidor manualmente porque jcrop solo maneja las imágenes como un archivo, no como una cadena base64.

¡Buena suerte! :RE

Actualmente estoy desarrollando una solución para una aplicación de impresión de pósteres de impresión en línea.

Una de las características que me gustaría incluir es la capacidad de ''editar'' (recortar / escalar / rotar) una imagen dada, antes de proceder a ordenar un póster de dicha imagen.

Para evitar el requisito de que el usuario cargue la imagen en un servidor remoto antes de editarla, me gustaría saber lo siguiente:

¿Es posible (usando JavaScript) cargar una imagen almacenada en la máquina cliente en la memoria del navegador / navegador para editarla, sin cargar la imagen a un servidor remoto? Y si es así, ¿cómo se hace esto?

Gracias,

BK



Solo trato de hacerlo, pero con Chrome recibo este mensaje:

Not allowed to load local resource: file:///C:/fakepath/1.jpg

cuando hago esto

$img = new Image(); $img.src = $(''#f'').val(); $img.onLoad = function (){ alert(''ok''); }


Usando Html / Javascript, solo puede seleccionar archivos usando el componente html de carga de archivos (creo que Flash / Silverlight envuelve esto para hacer las cosas más fáciles pero aún está en un espacio aislado)

Sin embargo, puede usar applets de Java (o como se llamen estos días), controles ActiveX nativos o controles .Net para proporcionar funcionalidad adicional (esto tiene implicaciones de seguridad y VM / Runtimes Frameworks requeridos, etc.)

Adobe Air u otra tecnología del lado del cliente pueden funcionar, pero parece que desea hacerlo en JavaScript. En este caso, subir el archivo al servidor y manipularlo es la mejor opción.

* [EDITAR] Desde 2010, desde que se respondió a esta pregunta, la tecnología ha avanzado, html ahora tiene la capacidad de crear y manipular dentro del navegador. vea las respuestas más recientes o estos ejemplos: http://davidwalsh.name/resize-image-canvas http://deepliquid.com/content/Jcrop.html *