likes
comments
collection
share

dev_prokit 之快速设置文本样式

作者站长头像
站长
· 阅读数 4

往期优选推荐

推荐指数: ⭐️⭐️⭐️⭐️⭐️

》fam 和 flutter_gen 相比优点《

  1. fam 不需要在项目的 pubspec.yaml 文件的 dev_dependencies 引入任何东西;而 flutter_gen 需要引入 flutter_gen_runner

  2. fam 在导入资源后只需要执行 fam run 即可;而 flutter_gen 需要执行 dart run build_runner build 。需要注意的是 dart run build_runner build 是很多代码自动生成的运行指令(多语言、json解析、rividerpod...等)。所以一旦执行就需要很长时间才能完成,而 fam 拥有独立的体系,便捷快速!

  3. fam 的资源管理类在项目中使用简短;而 flutter_gen 需要使用.语法一直到资源文件,然后再通过 .path 获取资源路径,这很麻烦!

  4. fam 拥有独立的系统体系; flutter_gen 和多语言的使用有一定的冲突。

推荐指数: ⭐️⭐️⭐️⭐️⭐️

该篇文章包含了 dev_prokit 所有功能介绍和示例的目录。此文章能够让开发者快速的了解 dev_prokit 都提供了那些功能,以及能更快速的找到自己需要的功能介绍和应用。

本期功能介绍

一、起因

在Flutter项目开发的广阔天地里,Text组件的使用可谓是无处不在,其出现频率之高几乎贯穿整个应用的每个角落。这些Text元素依据设计视图展现着千姿百态的面貌,而开发者则需要依据设计图精心调配不同的TextStyle,以赋予它们独特的风貌。

想象一下,若每个Text都需要我们手动书写形如TextStyle(xx, xx...)的冗长代码,那无疑会给开发者带来巨大的负担,同时也会导致代码量激增,显得杂乱无章。幸运的是,有了dev_prokit 这一得力助手,一切变得如此轻松与简洁。

二、功能介绍

dev_prokit 提供了下面对 TextStyle 处理的方法:

final TextStyle tStyle = TextStyle(height: 1, fontFamily: 'Rcod')

方法名功能用法
fInherit文本样式是否继承父 Widget 的样式tStyle.fInherit(true)
fColor设置文本颜色, 还可以设置透明度和不透明度sStyle.fColor(Colors.red)
bgColor设置文本背景颜色, 还可以设置透明度和不透明度sStyle.bgColor(Colors.red)
fSize设置文本字体大小sStyle.fSize(20)
thin、extraLight、light、normal、regular、plain、medium、semiBold、bold、extraBold、black设置文本字重sStyle.bold
fStyle设置文本字体样式sStyle.fStyle(FontStyle.italic)
lSpacing设置文本字符之间的间距sStyle.lSpacing(2)
wSpacing设置文本字体之间的间距sStyle.wSpacing(2)
tbl设置文本字体的基线sStyle.tbl(TextBaseline.ideographic)
tld设置文本之间的对齐方式sStyle.tld(TextLeadingDistribution.proportional)
oFlow设置文本溢出处理方式sStyle.oFlow(TextOverflow.ellipsis)
fHeight设置文本高度sStyle.fHeight(1)
fFamily设置文本字体名字sStyle.fFamily('仿宋')
familyFallback设置文本字体名字失败时,回调使用字体sStyle.familyFallback(['小宋'、'篆体'])

... 等等。还有很多未介绍的功能方法,请自行查看文档便可即知。

三、小试牛刀

下面我们将使用 dev_prokit 提供的方法中常用的的方法进行测试:

  • 示例代码

    const TextStyle tStyle = TextStyle(fontFamily: 'Rc', height: 1);
    return Scaffold(
      appBar: AppBar(
        title: Text(
          '文本样式',
          style: tStyle.bold,
        ),
      ),
      body: Column(
        children: [
          Text(
            '设置字重',
            style: tStyle.medium,
          ),
          Text(
            '设置大小',
            style: tStyle.fSize(20),
          ),
          Text(
            '设置文本颜色',
            style: tStyle.fColor(Colors.red),
          ),
          SizedBox(
            width: 60,
            child: Text(
              '设置溢出格式',
              style: tStyle.oFlow(TextOverflow.ellipsis),
            ),
          ),
          Text(
            '设置文字字母间距',
            style: tStyle.lSpacing(5),
          ),
          Text(
            '设置文字字体间距ab like',
            style: tStyle.wSpacing(50),
          )
        ],
      ).insetsAll(20),
    );
    
  • 效果展示

    dev_prokit 之快速设置文本样式

四、鼓励与支持

这便是 dev_prokit 提供的方法之一。以编写代码较少、功能完善、代码运行强壮、支持面广等形式来开发 dev_prokit 包。 如果你有 Idea 或者 Opinion ,那请你点击此处 》》Idea & Opinion《《 把它留下吧!如果你在使用该功能后感觉还可以,它能够给你的项目开发带来便捷,那请你为之点个⭐️ dev_prokit ⭐️ 吧!分享给更多需要它的开发者。