resolve method
Resolves the size value to pixels based on the context
Implementation
double resolve(BuildContext context, {double? parentSize}) {
switch (unit) {
case SizeUnit.px:
case SizeUnit.pt:
return value;
case SizeUnit.percentage:
if (parentSize == null) return 0;
return value * parentSize / 100;
case SizeUnit.rem:
// Get the base font size from the closest MediaQuery
final scaler = MediaQuery.textScalerOf(context);
return value * scaler.scale(16);
case SizeUnit.vh:
final mediaQuery = MediaQuery.of(context);
return value * mediaQuery.size.height / 100;
case SizeUnit.vw:
final mediaQuery = MediaQuery.of(context);
return value * mediaQuery.size.width / 100;
}
}