PDA

View Full Version : AJAX upload image: resize image trên máy tính trc khi upload lên host????



olbk
07-01-2011, 13:41
Cho mình hỏi có thể làm đc với AJAX upload image: resize image trên máy tính trc khi upload lên host?
AJAX sẽ kiểm tra dung lượng ảnh trc, nếu ko đạt yêu cầu nó sẽ "change quality" của iamge ngay trên máy tính đến 1 thư mục nào đó C:\Documents and Settings\Administrator\Application Data\AJAX-IMAGE chẳng hạn. Rồi lấy đường dẫn mới tới input rồi submit upload ko?

MÌnh hỏi có lẽ hơi kỳ cục :), mong ai đó giải đáp !
Thanks!

vuacuagai
07-01-2011, 13:48
Cho mình hỏi có thể làm đc với AJAX upload image: resize image trên máy tính trc khi upload lên host?
AJAX sẽ kiểm tra dung lượng ảnh trc, nếu ko đạt yêu cầu nó sẽ "change quality" của iamge ngay trên máy tính đến 1 thư mục nào đó C:\Documents and Settings\Administrator\Application Data\AJAX-IMAGE chẳng hạn. Rồi lấy đường dẫn mới tới input rồi submit upload ko?

MÌnh hỏi có lẽ hơi kỳ cục :), mong ai đó giải đáp !
Thanks!

Theo mềnh được biết thì hông, vì mọi xử lý trên browser của AJAX đều là javascript, và javascript được thiết kế ko được phép xử lý hay truy xuất cái gì từ ổ cứng cả (vì lý do bảo mật).
Do đó bạn vẫn phải upload nguyên xì cái image lên server, rồi xào nấu gì trên đó thôi rồi nhả về client.

Shellingfox
07-01-2011, 14:00
Với HTML5 giờ và các sự hổ trợ file API của các browser mới (Firefox4 và Chrome5) thì yêu cầu của bạn có thể làm được. Tuy nhiên cần cân nhắc số lượng user.

Cách hiện tại các website lớn làm là sử dụng flash hoặc java làm công cụ để upload, xử lý hình ảnh ở client trước rồi mới upload lên.

[=========> Bổ sung bài viết <=========]

Bổ sung cái ví dụ cho bạn:
http://demos.hacks.mozilla.org/openweb/imageUploader/

olbk
09-01-2011, 00:15
cám ơn các bạn!!!!!!!!!!!!!!!

gs.g
09-01-2011, 01:44
Xử lý ảnh không dễ. Nếu bạn cần thì có thể xem qua imagemagick (xử lý trên server):
http://imagemagick.org/script/index.php

gycoder
16-01-2011, 22:49
Tham khảo cái này : http://gycoder.uni.cc/g/paint.htm

Chưa hoàn chỉnh, nhưng hiện đã có thể đưa hình ảnh vào edit ngay tại chỗ, không cần nhờ đến các tác vụ của máy chủ. Gypaint được viết hoàn toàn dựa trên những kỹ thuật phía client.

Bạn có thể google thêm các từ khóa : canvas, FileReader, getAsDataURL.

Về Gypaint, tớ vẫn đang bí chỗ này, bác nào pro giúp thêm :

http://www.mail-archive.com/jsmentors@googlegroups.com/msg00823.html