我有下面的代码。
QString fileName = QFileDialog::getSaveFileName(
this,
tr("Output Image file"),
(""),
tr("PNG (*.png);;JPEG (*.JPEG);;Windows Bitmap (*.bmp);;All Files (*.*)")
);
if(fileName != "")
{
QwtPlot* pPlot = ...
QSize size = pPlot->size();
QRect printingRect(QPoint(0, 0), size);
QPixmap pixmapPrinter(size);
pixmapPrinter.fill(Qt::white);
{
QPainter painter(&pixmapPrinter);
pPlot->print(&painter, printingRect);
}
bool isOk = pixmapPrinter.save(fileName);
if(!isOk)
{
QString msgText = tr("Failed to write into ") + fileName;
QMessageBox::critical(this, tr("Error Writing"), msgText);
}
}
因此,路径是这样的: - 文件对话框弹出 - 用户选择格式和文件 - 系统绘制情节上的QPixmap - 保存的QPixmap到文件中。
它适用于PNG和BMP没有问题,但是对于JPEG,JPG,JPG,等它失败。
我一切都结束了Qt文档,但无法找到任何细节。 它应该只是工作。 有任何想法吗?
我使用Qt的商业版本,4.5.1的Windows。
我使用的dll,Qt是不是路径上。
我才意识到,我静态链接到古典的第三方jpeg.lib(独立JPEG小组的JPEG软件),它是由其他库。
有没有可能是冲突或东西的产生是因为这个?
或者它只是该插件加载不正确。