Ler / processar imagem através de javascript passando sua URL - Similar ao file_get_contents em PHP?

ATUALIZAR:

Para fins de teste, usei

<input type="text" onClick="doProcess(http://www.abc.com/chart.png)" />

Isso não funcionou (usadoalert para testar se o URL estava sendo passado. A caixa de alerta apareceu com o URL, mas a decodificação falhou). De certo modo, eu mesmo respondi a uma parte da minha pergunta. Alguma idéia sobre como ler um arquivo de imagem através de javascript?

Acabei de descobrir que este é um código relacionado ao HTML 5. Também percebi que desde que eu estou passando uma url em vez de lista de arquivos, eu preciso remover ofor() loop dodoProcess() função que seria

function doProcess(f)
{
    var o=[];

           var reader = new FileReader();
        reader.onload = (function(theFile) {
        return function(e) {
            gCtx.clearRect(0, 0, gCanvas.width, gCanvas.height);

            qrcode.decode(e.target.result);
        };
        })(f);
        reader.readAsDataURL(f); 

}

Mas isso não funciona também :(

POSTE ORIGINAL

Eu tenho um arquivo de entrada ao qual um arquivo de imagem QR é fornecido.

<input type="file" onchange="doProcess(this.files)">

função doProcess

function doProcess(f)
{
    var o=[];

    for(var i =0;i<f.length;i++)
    {
        var reader = new FileReader();
        reader.onload = (function(theFile) {
        return function(e) {
            gCtx.clearRect(0, 0, gCanvas.width, gCanvas.height);

            qrcode.decode(e.target.result);
        };
        })(f[i]);
        reader.readAsDataURL(f[i]); 
    }
}

Esta função funciona perfeitamente. Não há problemas aí. O objetivo desta função é decodificar uma imagem QR. Agora, por puro interesse e curiosidade, estou planejando fazer algo diferente -remova a necessidade de navegar manualmente para o arquivo de imagem. Isso me leva a algumas perguntas:

É possível paradoProcess(f) executar as mesmas ações quando fornecido com um URL de imagem em vez de um arquivo? Atualmentef parâmetro é um arquivo. O que acontecerá sef parâmetro é um URL (por ex: doProcess (http://www.abc.com/abc.jpg)) Eu percebo que existem outras funções de suporte dentrodoProcess() também sendo chamado para completar o processo de decodificação, mas eu estou supondo que eles irão agir de acordo com o tipo de dado que está sendo passadodoProcess.

E sef parâmetro é um arquivo de imagem (navegado no computador local e selecionado) em vez de URL da imagem, que tipo de dadosf estar? Eu estou supondo que será uma matriz ou em alguma forma binária bruta.

Minha intenção é estudar o processo e saber exatamente o que está acontecendo nos bastidores. Usando a função 'browse', a imagem QR está sendo decodificada com sucesso.

Em resumo, o que acontecerá se eu passar a localização da imagem armazenada como o argumento em vez de um arquivo?

Desde já, obrigado.

questionAnswers(1)

yourAnswerToTheQuestion