首页 > 其他分享 >Flutter计算文本高度

Flutter计算文本高度

时间:2024-01-17 17:11:47浏览次数:29  
标签:maxWidth text maxLines 高度 height fontSize 文本 Flutter

在开发中我们需要去计算文本的高度,从来去设置控件的高度,在flutter中我们可以使用TextPainter来计算文本高度

//获取文字高度 text:文字内容 fontSize:字体大小 fontWeight:字重 height:行高 maxWidth:最大宽度,maxLines:最大行数
   static double getTextContextSizeHeight(String text,double fontSize,FontWeight fontWeight,double height,double maxWidth,int maxLines){
      TextPainter textPainter = TextPainter(
        //用于选择用户的语言和格式首选项的标识符。
        locale: WidgetsBinding.instance.window.locale,
        //最大行数
        maxLines: maxLines,
        //文本书写方向l to r 汉字从左到右
        textDirection: TextDirection.ltr,
        //文本内容以及文本样式 style:可以根据在代码中设置的TextStyle增加字段。
        text: TextSpan(
          text: text,
          style: TextStyle(
            fontWeight:fontWeight,//字重
            fontSize: fontSize ,//字体大小
            height: height,//行高
          )
        )
      );
      //最大宽度
      textPainter.layout(maxWidth: maxWidth);
      //返回高度
      return textPainter.height;
  }

标签:maxWidth,text,maxLines,高度,height,fontSize,文本,Flutter
From: https://www.cnblogs.com/huangczh/p/17970487

相关文章

  • 富文本编辑器
    在components中创建wangEditor组件在页面引入即可<template> <divstyle="border:1pxsolid#ccc;">  <Toolbarstyle="border-bottom:1pxsolid#ccc":editor="editor":defaultConfig="toolbarConfig":mode="mod......
  • latex强大排版能力体现,多根号高度的联动调整
    简单根号内容:$\sqrt{2x^2*\frac{1}{3a}}$\\复杂根号内容:$\sqrt{2x^2}\sqrt{\frac{1}{3a}}$\\%明显看出多根号情形下,根号的这种调整是无能为力的,借助命令vphantom,使得对象占据本身的高度宽度为零\\复杂根号内容:$\sqrt{\vphantom{\frac{1}{3a}}2x^2}\sqrt{\frac{1}{3a}}......
  • R语言SVM模型文本挖掘分类研究手机评论数据词云可视化
    随着大数据时代的来临,数据挖掘和机器学习在诸多领域中的应用价值日益凸显。手机评论数据作为消费者对产品和服务的主观反馈,具有巨大的商业价值。本文旨在帮助客户通过R语言实现支持向量机(SVM)模型在文本挖掘分类方面的研究,并对手机评论数据进行词云可视化分析,以深入挖掘消费者意见,为......
  • flutter 生命周期
    Stateless无状态组件//Stateless无状态组件比较简单就是一个build函数,每次外部新状态压入,进行调用//当Widget不再需要时,比如在页面切换或者被移除时,Flutter会销毁这些Widget。//对于StatelessWidget来说,它没有内部状态(即无可变的变量)classLeftPageextendsStatelessWidg......
  • TTS-Text-to-speech-服务docker搭建-转化文本内容为语音
    title:TTS(Text-to-speech)服务docker搭建转化文本内容为语音tags:[TTS,docker,语音,AI,docker-compose]新版原文:https://query.carlzeng.top:3/appsearch?q=TTS版权声明:本博客所有文章除特别声明外,均采用BY-NC-SA许可协议。转载请注明出处!date:2024-01-0715:12:46......
  • 【开源项目推荐】——纯中文本地GPT知识库搭建项目.assets
    大家好,我是独孤风。又到了本周的开源项目推荐。近一年多的时间,人工智能迎来了大爆发。GPT相关的大模型的发展让很多领域都发生了巨大的变化。但是虽然GPT的自然语言识别功能异常的强大,但回答给我们的知识内容并不尽如人意。那么,有没有可以在本地部署搭建的AI知识库项目呢?今天为......
  • 安装android Studio 以及flutter
    开发装备的环境配置java环境系统变量里面添加JAVA_HOME软后在path中添加java环境配置查看java是否安装成功 然后安装 系统变量添加 ANDROID_HOME  在path中添加 然后在path中添加flutter环境变量win+r/cmd ---flutterdoctor打开网址 https://......
  • vue3使用 vant ui 3 如何获取组件 popup dom的高度?
    我目前使用的是vant-ui 3.1.2popup弹出层组件,我想要获取弹出层的高度来计算一些东西,但是使用常规定义refdom的方式总是无法获取,最终找到方案如下:vant-ui官方文档:https://vant-contrib.gitee.io/vant/v3/#/zh-CN/popup<template><van-popupv-model:show="show......
  • Flutter开发:Visual Studio Code使用
    1创建您的第一个Flutter项目启动VisualStudioCode并打开命令面板(使用F1、Ctrl+Shift+P或Shift+Cmd+P)。开始输入“flutternew”。选择Flutter:NewProject命令。2使用Refactor抽取函数2.1右键点击要重构的代码段(在本例中为Text),然后从下拉菜单中选择Refactor.........
  • MYSQL的B+Tree索引树高度如何计算
    前一段被问到一个平时没有关注到有关于MYSQL索引相关的问题点,被问到一个表有3000万记录,假如有一列占8位字节的字段,根据这一列建索引的话索引树的高度是多少?这一问当时就被问蒙了,平时这也只关注MySQL索引一般都是都是用B+Tree来存储维护索引的,还有一些复合索引的最左匹配原则等等,......