Tải lên tập tin hình ảnh: đã nén ở phía máy khách chưa?


9

Khi cung cấp tải lên tệp ảnh, thông thường người dùng sẽ có các tệp JPEG bị nén và lớn (10+ megapixel) từ máy ảnh hoặc điện thoại của họ. Về phía máy chủ, các tệp này sẽ được nén lại thành thứ gì đó như 800x600px và JPEG chất lượng 7 hoặc 8.

Có phải (đã) có thể thực hiện việc nén lại ở phía máy khách không? Vì vậy, tôi chỉ cần truyền một số 100kB (800x600px) chứ không phải 3 MB trở lên. Cái gì đó như:

(1) Với API hệ thống tệp mới của javascript ( http://slides.html5rocks.com/#filewriter ), có thể đọc dữ liệu của tệp ảnh vào JS phía máy khách.

(2) Sau đó, cần phải mã hóa lại dữ liệu JPEG, điều này là có thể, nhưng tôi không tìm thấy bất kỳ thư viện nào cho điều đó (chưa). Có ai biết một thư viện như vậy không?

(3) Bước cuối cùng là POST dữ liệu JPEG được nén lại về phía máy chủ để lưu trữ và lấy URL tới tệp ảnh được lưu trữ từ máy chủ để đưa vào HTML của máy khách.

Tôi đang tìm kiếm một số plugin jQuery, thư viện JS khác hoặc trang web ví dụ thực hiện điều này.


Các Có thể tối ưu hóa / thu nhỏ hình ảnh trước khi tải lên? câu hỏi tại StackOverflow trình bày một số giải pháp có thể.
danlefree

Câu trả lời:


4

Plupload hỗ trợ thay đổi kích thước hình ảnh html5 và sau đó tải chúng lên, nó cũng có các dự phòng cho các trình duyệt không được hỗ trợ (IE ho hay ho ) trong Flash, Silverlight (và các công cụ cổ xưa như Google Gears và BrowserPlus).



2

Xem bản demo này: http://makeitsolutions.com/labs/jic

Đó là một thư viện javascript do tôi tạo ra để giải quyết vấn đề đó.

Nó cho phép bạn nén jpg và png ở phía máy khách 100% bằng javascript và không cần thư viện bên ngoài!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.