多数の Web サイトの画像ストレージを、無期限にスケーリングできるサービス (S3、CloudFiles など) にプッシュする必要がある状況にあります。この時点まで、Djangoの sorl-thumbnailの助けを借りて Python の Imaging ライブラリを使用して、ユーザーがカスタム サムネイル サイズをオンザフライで生成できるようにしました。
画像を S3 などに移動すると、その場でサムネイルをすばやく作成する機能が失われます。次のいずれかを実行できます。
- S3 からソースをダウンロードし、サムネイルをローカルで作成することにより、ゆっくりと実行してください
。 - あらかじめ決められた一連のサムネイル サイズ (Flickr 風) を作成し、それらをすべて S3
コンにプッシュすることで、事前に実行します。生成できるサイズを制限し、決して使用されない多くのファイルを保存します。 - img タグの高さ/幅属性を使用してブラウザのサイズを変更します。
短所: 必要以上に大きなファイルをダウンロードすることで使用される余分な帯域幅
この時点で、#3 はほとんど欠点のない問題の単純な解決策のように見えます。このウェブサイトからのいくつかの簡単なテストとデータは、品質が予想ほど悪くないことを示しています (アスペクト比が維持されていることを保証できます)。
考慮していない可能性のある他のオプションや欠点について何か提案はありますか?
注: 画像はデジタル写真であり、Web での表示のみに使用されます。サイズは、高さ/幅で 1000 ~ 50 ピクセルの範囲です。