ユーザーが投稿した画像のサムネイルを作成しようとしていますが、サイズはすべて異なる可能性がありますが、やろうとしているときは次のとおりです。
画像の短い方の寸法を使用して、画像に許可されたスペースを埋めます。(画像が500x350で、サムネイルのサイズが250x250の場合、画像の高さがサムネイルを埋めます)、画像を他の次元の中央に配置しようとしています。これを行うのに問題があり、CSS と Javascript のどちらを使用すべきかわかりません。どんな提案も素晴らしいでしょう。
解決策:これで思い通りに動作するようになりました。
function sizeThumbs(){
//resize each idea image so it is a good sized/centered thumbnail
$.each($("img.thumbpic"), function() {
var maxWidth = 250;
var maxHeight = 150;
var width = $(this).width();
var height = $(this).height();
if((width/maxWidth) < (height/maxHeight)){
var multiplier = maxWidth/width;
var newHeight = height * multiplier;
$(this).css("width", maxWidth);
$(this).css("height", newHeight);
var heightD = (maxHeight - newHeight)/2;
$(this).css("margin-top", heightD+"px");
$(this).css("margin-bottom", heightD+"px");
}else{
var multiplier = maxHeight/height;
var newWidth = width * multiplier;
$(this).css("width", newWidth);
$(this).css("height", maxHeight);
var widthD = (maxWidth - width)/2;
$(this).css("margin-left", widthD+"px");
$(this).css("margin-right", widthD+"px");
}
});
}