操作
Backport(バックポート) #3363
完了日記やアルバムなどに投稿された画像のサムネイル表示が全て正方形に切り抜かれる問題
開始日:
2013-06-06
期日:
進捗率:
100%
予定工数:
説明
現象¶
画像付きの日記を日記の表示画面 (/diary/:id) などでサムネイル表示した際に、投稿された画像の縦横比に関わらず 長辺が切り落とされた正方形 で表示されてしまう。
この挙動は OpenPNE3.8 から追加されたメンバー画像の正方形化 (#2890) が他方にも影響したバグであると推測して調査を行う。
調査時に注意すべき点¶
このバグに関する調査の注意点として、 #3357 の影響によりサムネイル画像のキャッシュ (web/cache/ 以下に生成される) は ./symfony cc コマンドでは削除されないため、挙動の変化を確認する際には手動でこのキャッシュを削除する必要がある。
原因¶
#2890 の変更が sfImageHandlerPlugin を介する全ての画像に影響していることによるもの。
修正内容¶
- 正方形化した画像とそうでない画像でURLを区別しキャッシュの混在を避ける
- /cache/img/png/w120_h120/hogehoge.png (通常の画像)
- /cache/img/png/w120_h120_sq/hogehoge.png (正方形化する画像)
- ヘルパー関数 sf_image_path に square オプションを追加し、テンプレートにおいて画像を正方形化した状態で表示するか否かを選択できる状態にする
- このオプションは、メンバー画像 (nameが m_ から始まる) とコミュニティ画像 (nameが c_ から始まる) についてはデフォルトで true とし、それ以外はデフォルトで false とする。
操作