Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/05/2012, 15:29
asitudela
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 20 años
Puntos: 4
Respuesta: convertir binario (como una imagen) en base64

Gracias Panino5001 por tu respuesta, pero mi objetivo es realizarlo sin esa API, que como comentas, no es compatible con parte de los navegadores actuales.

Crees que podría adaptar el código que has puesto sin la necesidad de esa API, porque entiendo que la conversión la hace directamente el objeto canvas, haciendo algo similar a:

Código:
<input type ="file" name ="fileToUpload" id ="fileToUpload" onchange ="fileSelected();" />

<script>

function codificar(im){ 
    var i=new Image(); 
    i.onload=function(){ 
        var canvas=document.createElement('canvas'), 
        ctx=canvas.getContext('2d'); 
        canvas.width=300; 
        canvas.height=400; 
        ctx.drawImage(im,0,0,300,400); 
		console.log(canvas.toDataURL().split('base64,')[1]); 
         
    } 
    i.src=im; 
} 

       function fileSelected() {
         var file = document.getElementById('fileToUpload').files[0];
         if (file) {
 
		codificar(file);
         }



Tengo varios formularios concatenados en una web, y mi idea es guardar todo en el caché del navegador del usuario hasta que los finalice con el objetivo de reducir la carga del servidor, y eliminar la dependencia de otros lenguajes de programación. Puedo guardar todo en el navegador, incluso las imágenes si las convierto a base64, pero no logro hacer la conversión a base64 con javascript, y de ahí mi cuestión.

Alguna otra idea?