私が現在作成しているwebapppでは、ユーザーはサーバー側でデータベースに保存される画像を提供する必要があります。サーバーの負荷を最小限に抑えるために、HTML5 Canvas を使用してクライアント側で画像のサイズ変更を処理し、サイズ変更された画像の品質をユーザーに事前に承認してもらいます。
私が遭遇した問題はこれです - サイズ変更された画像のファイルサイズが大きいです。Paint.NET で同じ画像のサイズを変更すると、完全にまともな軽量の 8 ビット PNG 画像を取得できます。32 ビットの Paint.NET イメージでさえ、toDataURL を介してサーバーに表示されるイメージよりも小さいです。toDataURL 品質パラメータをいじってみましたが、変更しても何の効果もありません - まったく同じデータサイズです。
私は Chrome 20.0.1132.57 m でテストしており、アプリに関連する唯一のブラウザーは Chrome と Safari のデスクトップ バージョンであることを言及しておく必要があります。
サーバー側の画像処理を行うことができることは知っていますが、可能であればそれを避けたいです。質問 - ブラウザから送信される画像ファイルのサイズを小さくするために何かできることがあるとしたら、どうすればよいですか?