getStrutStyleFromTextScaler method

StrutStyle? getStrutStyleFromTextScaler(
  1. TextScaler scaler
)

get text strut style from parameters.

Implementation

StrutStyle? getStrutStyleFromTextScaler(TextScaler scaler) {
  final double fontSize = params.containsKey(EnumSpWMLParams.fontSize)
      ? params[EnumSpWMLParams.fontSize]
      : getDefFontSize();
  final TextScaler tScaler =
      textParams.p.useTextScaler ? scaler : TextScaler.noScaling;
  if (type == EnumSpWMLElementType.textField) {
    if (SpWMLFontStyleManager().useMaterial3) {
      return null;
    } else {
      return StrutStyle(
        fontFamily: params.containsKey(EnumSpWMLParams.fontFamily)
            ? params[EnumSpWMLParams.fontFamily]
            : getDefFontFamily(),
        fontSize: tScaler.scale(fontSize),
        height: getLineHeight(),
        leading: params.containsKey(EnumSpWMLParams.leading)
            ? params[EnumSpWMLParams.leading]
            : null,
        leadingDistribution:
            params.containsKey(EnumSpWMLParams.leadingDistribution)
                ? params[EnumSpWMLParams.leadingDistribution]
                : null,
        fontWeight: params.containsKey(EnumSpWMLParams.fontWeight)
            ? params[EnumSpWMLParams.fontWeight]
            : getDefFontWeight(),
        fontStyle: params.containsKey(EnumSpWMLParams.fontStyle)
            ? params[EnumSpWMLParams.fontStyle]
            : getDefFontStyle(),
        forceStrutHeight: params.containsKey(EnumSpWMLParams.forceStrutHeight)
            ? params[EnumSpWMLParams.forceStrutHeight]
            : null,
      );
    }
  } else {
    return StrutStyle(
      fontFamily: params.containsKey(EnumSpWMLParams.fontFamily)
          ? params[EnumSpWMLParams.fontFamily]
          : getDefFontFamily(),
      fontSize: tScaler.scale(fontSize),
      height: getLineHeight(),
      leading: params.containsKey(EnumSpWMLParams.leading)
          ? params[EnumSpWMLParams.leading]
          : null,
      fontWeight: params.containsKey(EnumSpWMLParams.fontWeight)
          ? params[EnumSpWMLParams.fontWeight]
          : getDefFontWeight(),
      fontStyle: params.containsKey(EnumSpWMLParams.fontStyle)
          ? params[EnumSpWMLParams.fontStyle]
          : getDefFontStyle(),
    );
  }
}