C++ 发布的应用程序与原始应用程序不一样

C++ 发布的应用程序与原始应用程序不一样,c++,qt,C++,Qt,我有一个文件,里面有成百上千的图片(照片),我需要在预览中展示给一些人。这个预览应该是一个采购订单(快速,没有“专业”),我会给他们这样的人可以放一个十字架,在情况下,他们想要的图片和大小(如此简单) 我尝试自动生成采购订单,在PDF上每页有两个(A4) 我使用Qt/C++和三个对象: QPDWriter QPainter QImage 以下是pdf生成类的开始: int order = 1; qDebug() << "pdf creation"; QString logoName

我有一个文件,里面有成百上千的图片(照片),我需要在预览中展示给一些人。这个预览应该是一个采购订单(快速,没有“专业”),我会给他们这样的人可以放一个十字架,在情况下,他们想要的图片和大小(如此简单)

我尝试自动生成采购订单,在PDF上每页有两个(A4)

我使用Qt/C++和三个对象:

QPDWriter
QPainter
QImage

以下是pdf生成类的开始:

int order = 1;
qDebug() << "pdf creation";

QString logoName = QFileDialog::getOpenFileName(0, "Sélectionner le logo", QString(), "Images (*.png *.bmp *.jpg)");

QString fileName = QFileDialog::getSaveFileName(0, "Export PDF",
                                                QString(), "*.pdf");

QString dir = QFileDialog::getExistingDirectory(0, "Sélectionner le dossier de photos");

QFont titleFont("Arial", 24);
titleFont.setUnderline(true);

QFont textFont("Times new roman", 12);

QDirIterator it(dir);

if (!fileName.isEmpty()) {
    if (QFileInfo(fileName).suffix().isEmpty())
        fileName.append(".pdf");
    QPdfWriter writer(fileName);

    QPainter painter(&writer);
    painter.setRenderHint(QPainter::Antialiasing);

    int height = painter.device()->height();
    int semi = height/2;
    int width = painter.device()->width();
    int digits = 1;

    qDebug() << "height : " << height << " width : " << width;

    QImage logo(logoName);
    QImage finalLogo = logo.scaled(3750, 1250, Qt::KeepAspectRatio);




    while(it.hasNext()){
        it.next();
        digits = countDigits(order);
        if(it.fileInfo().isFile()){
            if(order%2!=0){
                painter.drawImage(300,100,finalLogo);
                QImage currentPreview(it.filePath());
                QImage finalPreview = currentPreview.scaled(3250,4000, Qt::KeepAspectRatio);
                painter.drawImage(650,1500,finalPreview);
int顺序=1;
qDebug()高度();
int=高度/2;
int width=painter.device()->width();
整数位数=1;
qDebug()()

OP写道:

好的!我想出来了。处理jpeg的dll不在正确的目录中,我将它移到了正确的目录中,它正常工作了


在保存照片的目录上是否存在文件权限问题?照片文件可读吗??如果您以管理员/root用户身份运行应用程序(您不指明您的主机操作系统),这是否有帮助???这些图像是什么格式?也许你缺少图像插件?这些文件是可读的,我试着把它们放在其他目录中,我也试着以管理员(windows)的身份运行应用程序而且它在非开发pc上仍然不起作用。图像是。jpgYou可以尝试将调试日志重定向到发布模式的文件,然后调查该文件以检查出了什么问题。您需要为.jpg文件提供图像插件。查找
qjpg.dll
。这样的老问题没有必要把主页弄得乱七八糟。投票结束比较好。