What is the best and fastest way to resize client-side images using JavaScript?
EDIT: Sorry, I meant the best way to display an image modified on the client side.
Easily.
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Client-Side Image Resize (Why?!)</title> <script type="text/javascript"> window.onload = function() { var url = "http://www.google.com/intl/en_ALL/images/logo.gif"; var img = new Image(); img.onload = function() { var w = parseInt((this.width + "").replace(/px/i, ""), 10); var h = parseInt((this.height + "").replace(/px/i, ""), 10); // 50% scale w = (w / 2) + "px"; h = (h / 2) + "px"; var htmlImg = document.createElement("img"); htmlImg.setAttribute("src", url); htmlImg.setAttribute("width", w); htmlImg.style.width = w; htmlImg.setAttribute("height", h); htmlImg.style.height = h; document.body.appendChild(htmlImg); } img.src = url; } </script> </head> <body> <h1>Look, I'm Resized!</h1> </body> </html>
, flash10 , . , // -, , - ( apis), .
as3 core lib jpeg png-, .
, flex 3 ( 4) sdk flashdevelop, =)
. . 5 , , , . , , - 1500 , jpg png, 500 .
, , . JQuery, .
flash 10 :
http://www.swfupload.org/
http://www.shift8creative.com/projects/agile-uploader/index.html . , JavaScript, , .
, , JavaScript: http://www.shift8creative.com/projects/agile-uploader/advanced-demo.html
, . , .
, , . , - jQuery.
http://docs.jquery.com/CSS/height
http://docs.jquery.com/CSS/width
, .
- , .animate(...) . .
.animate(...)
, . , . :
Resizing an image is not a simple change in height / width. When you specify a size other than (through styles, script, etc.), the Original image size, the browser will use its own API (for example, win32 draw) to properly compress / enlarge the image. Cropping an image (losing part of an image) is easier, but rarely required.