Only snap resolution if pixel counts change

This commit is contained in:
Cohee 2024-02-13 11:40:37 +02:00
parent b8387df15e
commit 8d4c4c1945
1 changed files with 14 additions and 11 deletions

View File

@ -1799,6 +1799,8 @@ function setTypeSpecificDimensions(generationType) {
// Force to use roughly the same pixel count as before rescaling
const prevPixelCount = prevSDHeight * prevSDWidth;
const newPixelCount = extension_settings.sd.height * extension_settings.sd.width;
if (prevPixelCount !== newPixelCount) {
const ratio = Math.sqrt(prevPixelCount / newPixelCount);
extension_settings.sd.height = Math.round(extension_settings.sd.height * ratio / 64) * 64;
extension_settings.sd.width = Math.round(extension_settings.sd.width * ratio / 64) * 64;
@ -1813,6 +1815,7 @@ function setTypeSpecificDimensions(generationType) {
console.warn('Snap to resolution failed, using custom dimensions');
}
}
}
return { height: prevSDHeight, width: prevSDWidth };
}