sp property

double get sp

Tamaño de Fuente Responsive (sin context): Escala la fuente usando un porcentaje del ancho base y aplica el factor de escala de accesibilidad del usuario. Acepta valores de 0-100 (ej: 3.sp) o 0-1 (ej: 0.03.sp)

Ejemplos:

// Uso básico
fontSize: 3.sp  // Fuente responsive
fontSize: 0.03.sp  // Equivalente usando decimales

Implementation

double get sp {
  final screenInfo = ScreenInfoManager().info;
  final double baseSize;
  if (this <= 1) {
    // Si es decimal (0-1), multiplicamos directamente por el ancho
    baseSize = screenInfo.width * this;
  } else {
    // Si es porcentaje (0-100), usamos la lógica original
    baseSize = screenInfo.width * (this / 1000);
  }
  return baseSize * screenInfo.textScale;
}