2

Facebook やその他の画像を多用するサイトでは、サムネイルを縮小したり歪めたりせずに、画像全体のサムネイル サイズをどのように維持していますか?

これらのサムは元のバージョンをトリミングして保存されているので、サムをクリックするとフルサイズの画像が参照されます。

img タグで事前に設定したサイズに制限しようとすると、画像が伸びたり縮んだりします。

理想的には、縦横比を歪めることなく、各画像をプリセットサイズに合わせてトリミングしたいと思います。これがオンザフライで実行できる場合、これは大量の画像を処理する効率的な方法ですか?

4

2 に答える 2

2

HTML マークアップまたは CSS スタイルで画像のサイズを変更することは、悪い習慣と見なされています。スケールアップすると品質が低下し、スケールダウンするとユーザーは必要以上に大きなファイルをダウンロードする必要があり、速度が低下します。

ほぼすべての言語またはフレームワークの画像のサイズ変更とキャッシュ用に構築されたライブラリがあります。標準のアスペクト比を維持するために、ほとんどの場合、トリミングも備えています。PHP については、GD/ImageMagick に基づくphpThumbをご覧ください。

結果のサイズ変更された画像のバージョンはキャッシュ フォルダーに保存されるため、画像が要求されるたびに再生成する必要はありません。このように、パフォーマンスは静的ファイルを提供するのとほぼ同じです。唯一のオーバーヘッドは、サイズ変更されたバージョンがキャッシュに存在するかどうかの小さなチェックです。

于 2012-06-29T19:07:05.857 に答える
1

Facebook について直接話すことはできませんが、ほとんどのサイトでは大きな画像をアップロードすると、小さいプリセット サイズが自動的に再作成され (通常はスクリプト言語と PHP/GD などのライブラリによって)、同様のファイル名で保存されます。これにより、使用する帯域幅をできるだけ少なくし、読み込み時間を改善し、css で画像を操作するのを避けることができます。

于 2012-06-29T18:41:18.443 に答える