首页 > 其他 > 详细

Qt根据汉字生成位图,可连续调用,生成的位图不会有杂点

时间:2016-05-20 18:59:13      阅读:198      评论:0      收藏:0      [点我收藏+]

void MainWindow::drawText(int font_size, QString str, int n)
{
QPainter p;
QSize size(460, font_size); //指定图片大小;
QImage* image = new QImage(size, QImage::Format_ARGB32); //以ARGB32格式构造一个QImage,
image->fill(qRgba(0,0,0,0));

p.begin(image);
QPen pen = p.pen();
pen.setColor(Qt::red);
QFont font;
font.setFamily(("SimSun"));
font.setPixelSize(64);//改变字体大小

p.setPen(pen);
p.setFont(font);
p.setBackgroundMode(Qt::TransparentMode);//Qt::OpaqueMode , TransparentMode
p.setCompositionMode(QPainter::CompositionMode_DestinationOver);
p.drawText(image->rect(), Qt::AlignCenter, QObject::tr(str.toStdString().c_str())); //Qt::AlignLeft Qt::AlignRight

if(1 == n)
{
image->save("1.bmp");
}
else
{
image->save("2.bmp");
}

p.end();

}

Qt根据汉字生成位图,可连续调用,生成的位图不会有杂点

原文:http://www.cnblogs.com/zhangxuan/p/5512870.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!