scale property
double
get
scale
Escala calculada (automática para dimension, manual para factor)
Implementation
double get scale {
if (_type == ScaleType.factor) {
return _factor;
} else {
// ScaleType.dimension - calcula baseado na tela atual vs base
if (_currentScreenSize == null || _baseDimension == null) {
return 1.0;
}
final scaleX = _currentScreenSize!.width / _baseDimension!.width;
final scaleY = _currentScreenSize!.height / _baseDimension!.height;
// Usa a menor escala para garantir que tudo caiba
final calculatedScale = (scaleX < scaleY) ? scaleX : scaleY;
// 🔒 IMPORTANTE: No modo dimension, nunca pode ser menor que 1.0
final finalScale = calculatedScale < 1.0 ? 1.0 : calculatedScale;
return finalScale;
}
}