• 5756阅读
  • 2回复

问个关于QSimpleRichText使用的问题 [复制链接]

上一主题 下一主题
离线carbuncle
 
只看楼主 倒序阅读 楼主  发表于: 2006-05-12
我要将一段文字输出到一张图片上,怎样使文字自动换行?

QString str = "<html><head><meta name=\"qrichtext\" content=\"1\" /></head><body style=\"font-size:9pt;font-family:宋体\"> \
          <p><span style=\"font-weight:600\">111111111111111222222222222222222222222222222222222222222222222222222333333333333</span></p> \
          </body></html>";
QSimpleRichText rt(str, QFont());

QColorGroup cg;
QPixmap pixmap(300, 300);
QPainter painter;
painter.begin( &pixmap );
painter.fillRect(pixmap.rect(), Qt::white);
rt.setWidth( &painter, 300);
rt.adjustSize();
int iWidth = rt.widthUsed();
rt.draw(&painter, 0, 0, pixmap.rect(), cg, 0);
QImage image = pixmap.convertToImage();
image.save("d:/testrichtext.bmp", "BMP");

以上的代码只会显示前面的11111112......2222,后面的文字就给截掉了,怎么办?
我用的使QT 3.2.3
离线carbuncle
只看该作者 1楼 发表于: 2006-05-12
自己解决了

QSimpleRichText richText( text(), font, NULL, NULL, NULL, 1);
richText.setWidth( w );

OK
离线swingseagull

只看该作者 2楼 发表于: 2007-09-24
能否解释得更详细一些.我也碰到类似问题,依然未解决。我使用的是QT2.3.6.谢谢!
快速回复
限100 字节
 
上一个 下一个