Without loading the image, this will not be possible in JavaScript, as far as I can see, since security restrictions will prevent you from defining the selected file when loading the file and pasting this file in img (as it was possible five years ago.)
You will be more fortunate with Flash-based downloaders. I have seen some that offer the features you want.
Update: Here , which offers a preview function. From what I see, base64 encodes a local image and feeds it to an adjacent HTML page as an embedded <img> . This is great because it can integrate well into your site. However, it does not work with any version of Internet Explorer.
Here's a fully Flash-based solution that scans in all browsers.
source share