はてなフォトライフでアップロードで失敗するときは

カテゴリー:  Tech タグ:  image web

ブログで使う画像をはてなフォトライフにアップロードした際、特にエラーも出ないのアップロードがうまくいっていない場合があります。

何度かテストしてやっと原因がわかりました。

アップロードがうまくいかない現象

ブログで使う画像をはてなフォトライフにアップロードした際、特にエラーも出ないのアップロードがうまくいっていない場合があります。

こういう場合は、例えば2つの画像をアップロードしているのに結果はひとつの画像になってしまっていて後でアップロードした画像で先にアップロードした画像を書き潰しているようです。

これは、ブログ投稿画面からアップロードしても、フォトライフのアップローダーを使っても同じです。一度この現象にはまってしまうと、ずっと同じ状況が続きます。

アップロードがうまくいかない原因は?

何度かやっていて気づいたことがあります。

この現象が起こるのは、ある画像を元にサムネイルを作ったり一部を切り取るなど加工した画像を作成して、その元ファイルと加工後のファイルをアップロードした際に発生しているのです。

そこで思い出したのが、はてなフォトライフはデフォルトで撮影順にソートされることです。

確認してみると、どうもEXIF情報の撮影時間がそのままはてなフォトライフの画像のエントリーになっているようです。

がーん!

と言うことは、全く同じ撮影時間のEXIF情報を持った画像をアップロードすると上書きされてしまうということです。実際、わたしが悩まされていた状況は、元画像と加工後の画像で起こっているので同じEXIF情報を持ったものです。

試しに全く解像度も画像の中身も違う画像ファイルのEXIF情報を書き換え同じ撮影時間にしてアップロードすると、同じ現象が発生します。

解決策は?

最初に思いついたのは、「表示順を撮影順じゃなくアップロード順に設定にすればいいんじゃないか?」です。

ここまで馬鹿な仕様のシステムを作るヤツなら、単純にアップロード時間をエントリーのURLにしそうです。

しかし、ちょっと怖かったのは、「じゃぁ、これまでアップロードしたものはどうなるのか?」でした。そのままのエントリーを持ち続けてくれればいいのですが、エントリーを振り直したりする馬鹿な仕様かもしれません。

これまでのエントリーが全部書き換えられてしまうリスクを犯す気になれませんでした。

結論は、「重複しそうな時は画像のEXIF情報を消す」という消極的ならが確実に安全な策です。

EXIF情報がないとアップロード時間が使われるようです。

毎回毎回、EXIF情報を消すためだけに画像編集アプリを立ち上げるのも面倒です。

ImageOptim MacではImageOptimというアプリを使うと、このアプリに画像ファイルをドラッグするだけでEXIF情報を消してくれます。

本来は、PNGなどの画像ファイルを解析して最適することで画像ファイルのサイズを圧縮してくれるツールです。画面キャプチャーした画像などは一度このツールをくぐらせると少し小さくなるのでそれだけでもオススメのツールです。

コメント

Comments powered by Disqus