【问题标题】:how to calculate qfont pixel size from point size如何从点大小计算 qfont 像素大小
【发布时间】:2014-09-30 21:52:55
【问题描述】:

如何将QGraphicsObject 上的字体从点大小转换为像素大小?我需要这样做,以便当我使用 QGraphicsScene::render() 打印我的 QGraphicsScene 时字体看起来正确。

【问题讨论】:

  • 您在最终结果中寻找什么?为什么默认的render() 呼叫对您不起作用?
  • 我希望将场景打印在纸上,并且看起来像在屏幕上一样。默认的render 会为除文本之外的所有内容生成正确的结果。我的字体以磅为单位指定,默认的render(),当我传递一个从我的QPrinter 创建的QPainter 时,会使字体很大。这是我最初的问题:stackoverflow.com/questions/3679837/…

标签: qt qt4 font-size qt4.6


【解决方案1】:

QFontMetrics 类可能会完成这项工作。只需创建您想要的 QFont,设置它的磅值。然后在你的 QFont 上创建 QFontMetrics 对象。

【讨论】:

  • 我无法弄清楚如何使用 QFontMetrics 来执行此操作。我还查看了 QFontInfo,它确实给了我当前的像素大小,但我不确定如何处理它。到目前为止, font.setPixelSize(font.pointSize()) 似乎有效,但我不知道为什么 - 似乎它不可靠。想法?
  • font.setPointSize(yourPointSize); QFontMetrics fm(字体); fm.height()
猜你喜欢
  • 2015-02-07
  • 2016-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-20
  • 2012-04-10
  • 1970-01-01
相关资源
最近更新 更多