buildFontWeight method

FontWeight? buildFontWeight(
  1. FontWeight? weight
)

默认的字重计算逻辑

Implementation

FontWeight? buildFontWeight(FontWeight? weight) {
  if (level == null || level == El.md) return null;
  weight ??= FontWeight.normal;
  int v = weight.value;
  switch (level) {
    case El.xl:
      if (v == 400 || v == 500) return FontWeight.w600;
      if (v == 300) return FontWeight.w400;
      if (v == 200) return FontWeight.w300;
      if (v == 100) return FontWeight.w200;
    case El.lg:
      if (v == 400) return FontWeight.w500;
      if (v == 300) return FontWeight.w400;
      if (v == 200) return FontWeight.w300;
      if (v == 100) return FontWeight.w200;
    case El.sm:
      if (v == 400) return FontWeight.w300;
      if (v == 500) return FontWeight.w400;
      if (v == 600) return FontWeight.w500;
      if (v == 700) return FontWeight.w600;
      if (v == 800 || v == 900) return FontWeight.w700;
    case El.xs:
      if (v == 400 || v == 500) return FontWeight.w300;
      if (v == 600 || v == 700) return FontWeight.w500;
      if (v == 800 || v == 900) return FontWeight.w600;
    default:
      return null;
  }
  return null;
}