タグ

開発とexifに関するmingosのブックマーク (4)

  • JavascriptでJPEG画像からEXIFのOrientation情報のみを取得する | egashira.jp

    2015-08-10 Javascriptを使ってクライアントサイドで画像を縮小する場合に必要となるOrientation情報を、最小のコードと処理でJPEG画像から取得する関数を作りました。 クライアントサイドで画像を縮小してプレビューし、アップロードすることで通信帯域やサーバの負荷を抑えるJavascriptは比較的簡単に作れます。しかしiPhoneで試してみるとなんか変な状態になってしまいました。調べてみるとiOS6でメガピクセル画像をCanvasに描画するとおかしくなってしまう件と、その対処というページを見つけて、iPhone側に問題がありそうで、解決策も提示されているようです。 そこで必要となるのが、画像の正しい方向(回転とか鏡像とか)なのですが、JPEG内のEXIF情報に書き込まれているっぽいです。EXIF情報を取得するためのJavascriptコードもいろいろあるのですが、E

    mingos
    mingos 2013/12/12
    EXIFからOrientationのみを取り出すコード
  • UIImageOrientation / EXIF orientation sample images

    Whilst I was doing some work with images recently I was in desperate need for some sample images which were tagged with the EXIF orientation flag for each of the 8 orientations which are supported by UIImage in its UIImageOrientation metadata. I couldn’t find any already out there, so I made my own. And now I’m posting them here for anyone who might also find this useful. I now have these saved on

    UIImageOrientation / EXIF orientation sample images
    mingos
    mingos 2013/12/11
    EXIFのサンプル画像。かなり便利!
  • Hello Absurd World! JavaScript: Exifを保ったまま画像を縮小 Resize a Jpeg Image by JS Keeping EXIF: part 3

    主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。 記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます 前回: JavaScript: Resize JPEG images without losing Exif part2 JavaScriptでJPEG縮小をおこなうスクリプトが、ようやく完成に持ちこめた。 特徴は……インストールなしに、クライアントサイドで画像を縮小できる。縮小してもExifデータが失われない。縮小は同期処理なのでスクリプティングが楽。バイリニアで縮小をかけるので、画質の劣化を抑えることができる。 Demo 最近のスマフォは高画素化が進んで画像データの肥大化が進み、サーバへアップロードすると転送速度のおそさと相まってサーバの一つのプロセスを浪費しかねない。回線が潤沢に利用できない

  • [Ruby] EXIFのGPS情報も取得できるExtExif 1.0をリリースした

    extexif RubyにはEXIF(Exchangeable image file format)を扱うための実装がいくつかあるが、全て開発がとまっている。Pure Rubyで実装されたruby-exifは、Ruby1.8だとパッチを当てないとコンパイルが通らない。二つ目はCで書かれたlibexifをRubyから呼び出せるように拡張ライブラリで実装されたruby-libexifであるが、2007年5月23日現在サーバが落ちている。幸いローカルにキャッシュがあったためコンパイルを試みたが、Ruby1.8.5ではコンパイルが通らない。Debainパッケージではコンパイルが通るように修正が施されているが、このライブラリはEXIFのGPSデータの取得をサポートしていない。 exif.c #if 0 /* GPS tags are not supported in this library */

  • 1