Qt 如何获得适合图片的最大字体!

场景:我有一张图,在图片里添加文字,怎样计算适合图片的最大字体呢?可以用方法获得最适合的字体

项目环境:Qt 4.8.4  + VS2010

测试 :

	QString str="www.istonsoft.com";
	QFont font;
	font.setPointSize(1);
	qDebug()<<calcFontSize(str,font,1024,768);// 1024 768 代表图片宽高
函数:

int calcFontSize(const QString aText, QFont& aFont,int w ,int h)
{
    int fontPointSize;
    int wd_width=w;
    int wd_hgt=h;
    int i=1;
    while(i)
    {
        aFont.setPointSize(i);
        QFontMetrics fm(aFont);
        int x = fm.width(aText);
        int y = fm.height();
        if ((x > wd_width) || (y > wd_hgt))
        {
            fontPointSize = i-1;
            break;
        }
		i++;
    }
    aFont.setPointSize(fontPointSize);
	return fontPointSize;
}

效果图:




你可能感兴趣的:(图片,qt,字体计算)