0

トラブルシューティング FAQ を検索して試しましたが、発生している問題への参照が見つかりません。

web.config の resizer セクションに次のプリセットがあります。

name="kbp600w" defaults="w=600;h=600;mode=max;anchor=MiddleCenter;watermark=kbp600"

name="kbp600" defaults="w=600;h=600;anchor=MiddleCenter;bgcolor=FEF2E1;watermark=kbp600"

name="kbp300" defaults="w=300;h=300;anchor=MiddleCenter;bgcolor=FEF2E1;watermark=kbp300"

次の URL を使用して画像を生成します (同じファイルを使用して 3 つの異なる画像を生成します)。

picture.jpg?preset=kbp600w

picture.jpg?preset=kbp300

picture.jpg?preset=kbp600

だから、ここに事があります:

最初の URL は正常に機能し、プリセットで定義されたすべてのことを行います。

2 番目の URL も正常に機能し、プリセットで定義されているすべてのことを行います。

3 番目の URL は、画像の幅が高さ (横長) よりも大きい場合は正常に機能しますが、高さが最大の寸法 (縦長) の場合、高さは正しくサイズ変更されますが、幅の寸法は 600 ピクセルの幅を埋めるためにパディングされず、代わりに次のようになります。縦横比を維持するために計算されたサイズ。常に 600 x 600 のサイズで、上下または側面に適切な背景色のパディングがある必要があります。

私は何か間違ったことをしていますか?

https://gist.github.com/anonymous/5672886

4

1 に答える 1

0

mode=pad および scale=canvas(または) を使用しscale=bothて、要求された寸法を常に正確に取得します。

scale=both または scale=canvas を指定しないと、いずれかのサイズが 600x600 未満の画像は拡大またはパディングされません。

PS Anchor=MiddleCenter がデフォルトなので、指定する必要はありません。

于 2013-05-29T21:23:29.840 に答える