タグ

2015年8月21日のブックマーク (3件)

  • 画像をクライアント側で縮小してプレビューした後にアップロードする | egashira.jp

    2015-08-10 iPhoneでひしゃげてしまうバグに対応した、JavaScriptで画像を縮小処理する方法を紹介します。 JPEGの回転情報から正しい向きで表示したり、ジャギーを減らすためにエルミートフィルターを使ったスムージングも行います。 画像を投稿できるサイトなどでは、写真を"魅せる"ためのサイトでない限りディスプレイ幅以上の解像度のデータは必要なく、アップロードされた画像ファイルをサーバ側で縮小処理したデータのみを保存していることも多いのではないでしょうか? iPhoneのOSがバージョン6になってから、ようやくHTMLの<input type="file">がサポートされ、スマホ界隈でも画像投稿が熱くなってる感じがしますが、スマホのカメラはメガピクセルが当たり前なので、そのままだとファイルサイズが1メガ以上になってしまい、通信帯域を無駄に使ってしまいます。 HTML5で実用

  • Canvasで描画した画像を送信してサーバに保存する - Qiita

    タイトルどおりのことをやった際の実装時メモ。 Canvasから画像を取得 2通りの方法が見つかった。 Base64への変換 Blobへの変換 Base64への変換 canvas.toDataURL()を呼び出すだけで取得可能であるが、 画像サイズに比例した巨大な文字列となり、変換によって元サイズより33%データ量が増える。 取得したBase64を<image>のsrcに指定すれば画像表示され、 <a>のhrefに指定すればリンククリックでダウンロードできてこれはこれで便利。 Blobへの変換 canvas.toBlob()を呼び出すだけで取得可能。 Blob形式で表現すれば、createObjectURL(blob)によりURL参照が取得できるので、 画像サイズに依存せずメモリ使用量を抑えられるらしい。(未確認) これは便利と思いきやcanvas.toBlob()はFirefoxでのみサポ

    Canvasで描画した画像を送信してサーバに保存する - Qiita
  • Canvasで画像縮小をやってみた - aoyama-techのブログ

    カメラ解像度アップにより、画像サイズがメガ超えしていることからアップロードへの影響があるため、 Canvasを使ってクライアントサイドで画像縮小をやってみた。 Canvasって? ざっくりいうとjavascriptで画像を書けたり、画像を操作したりできます。 Canvasとは - Canvas - HTML5.JP 今回は、画像縮小を実際にやってみてどれくらいファイルサイズが削減できるのかためしてみた。 なんと、2MBくらいの画像が260KB程度まで落ちた! 読み込み速度もはやい!! これならラクラクアップロードできそうやね ♪ サンプルコード html <div id="contents" style="margin:20px; border-top:solid 1px #000;"> <h3>canvasTest</h3> <input id="inputFile" name="pho

    Canvasで画像縮小をやってみた - aoyama-techのブログ