2012-07-31 90 views
1

我有一個表單,包含一個輸入類型='文件'的字段,用於上傳圖片。
我正在尋找調整此字段所選圖像大小的方法,但不立即上傳。上傳前調整圖像大小,但同步上傳(不是ajax)。可能嗎?

我讀過一些教程,教導以下過程:
1 - 在文件字段上使用'onchange'事件捕獲圖像;
2 - 創建一個具有所需圖像大小的畫布元素;
3 - 在canvas元素中繪製圖像並讀取其內容;
4 - 使用FormData異步發送圖像數據(ajax)。

我想直到第3步做同樣的事情,然後在用戶單擊表單的提交按鈕時將調整大小的圖像與其他字段一起發送。

有沒有人有什麼想法?
謝謝!

PS:有些帖子,幾乎做什麼,我的願望:
http://coding.pressbin.com/84/File-API-Resize-photo-before-upload/
Resizing an image in an HTML5 canvas

回答

1

如果你想調整圖像大小,以節省空間的嘗試: http://www.researchandtechnology.net/bcif/

這是一個JavaScript圖像壓縮算法。

而且這可能會幫助:Javascript lossless image compression

,並與其他形式的項目基地64編碼圖像 How to convert image into base64 string using javascript

包括它,如果你並不想這樣做將其作爲一個字符串

你能否提供更多信息?

+0

謝謝,但我真正需要的是一種方式張貼圖像的大小版本一起與其他表單域。 – 2012-07-31 17:41:28

+0

閱讀編輯以獲取更多信息 – LmC 2012-07-31 19:18:20

+0

我不想觸摸實際表單的服務器端表單處理(它由CMS生成),但我認爲我別無選擇。我試圖更改輸入字段中的文件數據,但現在由於安全原因,我知道這是不可能的。我會嘗試你的解決方案。謝謝! – 2012-07-31 20:05:55