他のヒント

Vaibhav と同様に、最初にサムネイル領域全体を黒で塗りつぶします。これは、最初に画像をサムネイルに合わせてから、 pillarboxing またはレターボックス

imageWidth x imageHeight 画像を thumbWidth x thumbHeight に収める一般的なソリューションの擬似コード(正方形である必要はありません)エリア:

imageRatio = imageWidth / imageHeight;
thumbRatio = thumbWidth / thumbHeight;

zoomFactor = imageRatio >= thumbRatio
    ? thumbWidth / imageWidth 
    : thumbHeight / imageHeight;

destWidth = imageWidth * zoomFactor;
destHeight = imageHeight * zoomFactor;

drawImage(
    (thumbWidth - destWidth) >> 1,
    (thumbHeight - destHeight) >> 1,
    destWidth,
    destHeight);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top