dhalmel
メンバー
3 years前の投稿 #
いつもプラグインを便利に利用させていただき感謝しております。
現在、Ktai Entry(0.8.5)を下記環境にて利用いたしております。
WordPress:2.5.1
サーバ:CORESERVER(PHP5.2.5)
メール投稿用ユーザを何件か登録しておりますが、そのうちの1ユーザからの投稿に関して、
添付した画像が回転してしまう現象が発生しております。
そのユーザがメール登録に利用している端末は、SoftBankの814SHと伺っております。
同一環境に対してSoftBankの別端末(911T)で登録したところ、回転する現象は出ておりません。
当該ユーザは、縦位置で写真を撮り、そのまま添付していると伺っています。
エントリー時に文字列を入れて画像を回転させる方法は存じておりますが、
そのユーザに毎回対応を依頼するのは難しい状況です。
投稿された画像を回転させるように、予め設定時に指定する等の機能をご検討いただけるととても有り難いです。
当該ブログはそのユーザからの投稿がほとんどとなるため、ユーザ単位ではなくても、ブログ単位でもそういった指定ができれば幸いです。
或いは、コード上で何らかの対策方法があれば、ヒントをいただけると助かります。
どうぞよろしくお願いします。
当該ユーザは、縦位置で写真を撮り、そのまま添付していると伺っています。
画像サイズはいくつでしょう?
殆どの携帯電話では、モバイルモード (320x240 より小さい) の場合は、基本が縦方向なので、縦位置で撮ればそのまま記録されますが、VGA 以上の画像 (デジカメモード) の場合は、基本が横方向なので、縦方向で撮ると横向きに回転されたかのように記録されます。
ですので、待受画像サイズで撮影してもらうか、VGA 以上のサイズで撮る場合は携帯電話自体を横位置で撮ってもらうようお願いできますでしょうか。
もしくは、ソフトバンクのサーバー側メール設定もしくは端末の設定で、「ROT:R」という内容の署名を付ける手があります。署名の前に「--」という文字列が入ると無視されてしまうので、それが入らないように調整してください。
回転コマンドを後で制御する独自フィルターフックはさすがに作り込んでいません。コード改造することになりまして、post.php の 841 行目、回転コマンドを解釈する部分で、デフォルトの回転コマンドを 'N' と定義している部分
$rotations = array_fill(0, $num_images, 'N');
を 'R' にしてしまう手があります。
dhalmel
メンバー
3 years前の投稿 #
ご回答ありがとうございます。
いずれかの方法にて試してみます。
---
参考までに。
実は、「回転しない」端末の場合も、
回転する端末同様に画像サイズが大きい状態でした。
回転してしまう機種に関しては、
画像サイズが480*640ピクセルです。
同様に回転しない機種に関しては、
画像サイズが480*800ピクセルです。
同様に回転しない機種に関しては、
画像サイズが480*800ピクセルです。
うーん。911T はひょっとすると、480x800 と 800x480 の両方のモードを持っていて、その縦方向の状態で撮影していたのかもしれません (マニュアル未確認)。加速度センサーを持っている機種だと、縦横の自動判別をやっている可能性もあります。
dhalmel
メンバー
3 years前の投稿 #
結局、運用状況を考慮し、さしあたって
post.php の 841 行目、回転コマンドを解釈する部分で、デフォルトの回転コマンドを 'N' と定義している部分
$rotations = array_fill(0, $num_images, 'N');
を 'R' にしてしまう
で対応してみることと致しました。
また状況がわかりましたら書き込みます。
回転方向として R を提案していますが、回転方向によっては L じゃないと上下逆になるかもしれません。これは実際の投稿状況を見て決めて頂ければ幸いです。
814SH はたぶん EXIF を持っていない(!)はずなので、EXIF フィールドを見て回転方向を自動調整する、ということも無理なんですよね……。(手元にある 812SH より推測)
「回転方向を調整する」ための独自フィルターフックを作ってみる方向で検討してみます。
dhalmel
メンバー
3 years前の投稿 #
ソース修正により、
ひとまず向きの調整はできるようになりました。
(Rでいけました)。
ありがとうございました。
告知が遅くなりましたが、バージョン 0.8.6 で回転用の独自フィルターフックを入れ込みました。附属ドキュメントにも「VGA 以上のサイズなら画像を右回転させたい」というテクニックを掲載しています。ただ、このテクニックは画像をいちいちオンメモリに展開するので、動作がちょっと重いのが欠点です。