1

サイトに画像カルーセルを設定しようとしています - ほとんどの画像サイズ (通常は 16:9、4:3、および縦長) を処理する必要があります。

これを行うには、画像の高さを 90 ピクセルに固定する必要があります。たまたま 120 ピクセルよりも広い場合は、余分なビットをトリミングすることをお勧めします。120以下なら構わないけど。

そのために、この構成が機能することを期待していました。

location /myimage/x90/ {
    proxy_pass                      http://imagestore/;
    image_filter                    resize - 90;
    image_filter                    crop   120 -;
    image_filter_buffer             5M;
    image_filter_jpeg_quality       100;
    error_page                      415   = /empty;
    proxy_set_header                Host    $origin_host;
}

サイズ変更が行われることを期待していました (これにより、高さが 90 になり、縦横比が維持されます)。次に、トリミングが発生し、その高さを維持します。

ただし、トリミングによりサイズ変更が行われないようで、実際に背の高い 120 幅の画像しか得られません。

これを行う方法はありますか?

4

1 に答える 1

2

docsによると、画像フィルター操作は次の順序で行われます: croprotateresize
私はこれを回避する方法を知りません。サイズを変更してから、リダイレクトしてトリミングすることはできますか?

更新 2015/08/11:ドキュメントが変更されたようで、新しい操作順序はresize、rotate、crop のようです。

于 2013-01-24T20:46:49.817 に答える