终于终于找到 qt 正确的计算字符串所需宽高方法了,网上现有的都有弊端
我想要的是给定宽度计算出字符串所需高度,在计算时先保证单词完整性,如果单词整个宽度超出给定宽度,再进行任意位置换行,再计算高度。QFontMetrics 只能二选一

一般方法:

QFontMetrics fm(this->font());QRect rect(0, 0, w, this->height());QRect rt = fm.boundingRect(rect, Qt::AlignCenter | Qt::TextSingleLine, "simple"); //

高配方法:

QTextOption toption(Qt::AlignCenter);toption.setWrapMode(QTextOption::WrapAtWordBoundaryOrAnywhere);QRect rect = option.rect;rect.setHeight(500);rect = painter->boundingRect(rect, "I am the king of the world", toption).toRect();

这样计算的有一下好处先按照完整单词计算,如果整个单词宽度大于指定宽度则强制对单词截断换行

qt 计算字符串宽度高度相关推荐

  1. mfc怎么计算字符串宽度_Python基础之好玩的字符串格式化f-string格式

    更多内容,请参考白月黑羽Python3教程 - 格式化字符串 f-string 格式化 f-string 格式化 就是在字符串模板前面加上f,然后占位符使用{} ,里面直接放入对应的数据对象.如下所示 ...

  2. JS计算字符串在浏览器中显示的宽度

    js计算字符串宽度 大家可能会碰到这样一个需求:一个容器的宽度固定,当内容的宽度超过容器的宽度时鼠标移入显示提示框,不超过时则不显示. 这个时候就需要知道内容到底多宽. 怎么计算宽度 一 .估计法 假 ...

  3. C#如何测量字符串的高度宽度和精确取得字符串的高度宽度

    C#如何测量字符串的高度宽度和精确取得字符串的高度宽度 因为MFC中CDC有GetTextExtent()可以获得字符串的高度宽度 像素单位,所以自然想到c#的GDI+的MeasureString,这 ...

  4. iOS7中计算UILabel中字符串的高度

    iOS7中计算UILabel中字符串的高度 iOS7中出现了新的方法计算UILabel中根据给定的Font以及str计算UILabel的frameSize的方法.本人提供category如下: UIL ...

  5. c# 计算空格宽度像素_黄聪:C#如何通过MeasureString、Graphics获取字符串的像素长度...

    1.    使用g.MeasureString()获得 使用MeasureString测量出来的字符宽度,总是比实际宽度大一些,而且随着字符的长度增大,貌似实际宽度和测量宽度的差距也越来越大了.查了一 ...

  6. ios 计算label宽度(高度)出错在iPhone5s、iphone6上出错

    今天使用Label的时候,需要计算UILabel的高度,发现在4,4s上显示正常,在iPhone5s.iphone6上显示出错 使用的方法为: NSString *teacherComment = @ ...

  7. ios 怎么判断字符串的字节数_iOS 计算字符串长度-boundingRectWithSize:

    iOS 7.0之前用sizeWithFont:(计算的不是很准确) CGFloat width1=[(NSString *)obj sizeWithFont:[UIFont systemFontOfS ...

  8. python如何计算字符宽度_Python中计算字符宽度

    转载:http://likang.me/blog/2012/04/13/calculate-character-width-in-python/ 最近在用python写一个CLI小程序,其中涉及到计算 ...

  9. 图片加尺寸php代码,php获取图片尺寸(宽度,高度)_php

    本篇文章主要说明php获取图片尺寸(宽度,高度)的函数,即getimagesize()函数. 语法:array getimagesize( string filename [, array & ...

最新文章

  1. jquery实现99乘法表的动态显示
  2. 内置h5 调用safari系统浏览器打开_开发教我做设计:移动端H5页面中的橡皮筋效果...
  3. 复旦大学吴立德《数值优化》、《深度学习》和
  4. mac搭建本地svn
  5. 双向链表的(CRUD)
  6. 以色列网络安全初创企业Cronus获350万美元A轮融资
  7. Web.Config中的compilation debug=true/
  8. 京东回应拖欠神州 3 亿多元货款;苹果考虑将第三方浏览器和邮件设为默认;PS 诞生 30 周年| 极客头条...
  9. Python 中把 Word 文档转换成 PDF
  10. HTML5全局属性汇总
  11. 罗丹明RB/四甲基罗丹明标记酰胺化果胶Amidated Pectin, Rhodamine B/TRITC labeled;Rhodamine B/TRITC-Amidated Pectin
  12. Acrobat如何将word文件转换成pdf格式
  13. C语言程序设计简谐运动的模拟,C语言课程设计简谐振动实验的模拟.doc
  14. css 波纹扩散_css水波纹动画
  15. 北风:头条号自媒体平台怎么运营赚钱?
  16. WinSCP软件安装教程
  17. 这是我见过最通俗易懂的MES与ERP介绍文章,带你剖析工业4.0!
  18. 【深入理解计算机系统】第三章重点汇总
  19. Linux系统中安装软件的几种方式
  20. tensorRT onnx中属性名相同,但实际大小不同生成问题

热门文章

  1. Lepus监控redis
  2. PC与西门子PLC通讯免费软件Libnodave
  3. 使用ajax技术对内容进行修改,使内容回显到组件框中
  4. 泰克TBS1000X示波器仪器的使用
  5. 特征偏度和异常值处理
  6. 生成签名证书keystore
  7. 广式粤语VS港式粤语
  8. 【论文导读】Self-Supervised Learning with Data AugmentationsProvably Isolates Content from Style
  9. JS ListBox动态加载数据
  10. JavaEE企业级实战项目 智牛股第七天 权限与网关的搭建