Я пытался распечатать целую папку изображений в качестве первого этапа проекта и не смог заставить его работать. Изображения называются «batch_X.jpg» (но тип файла может измениться, если что-то работает лучше), и для тестирования я просто заставляю его печатать в pdf, чтобы не тратить тысячи кусочков бумаги. Я могу завершить l oop до go и сделать файлы с именем «testX» в выходной папке, однако вместо того, чтобы быть изображением, которое я хочу напечатать, они всегда просто отображаются в виде пустых белых страниц.
Вот код, который я выполнял, со строками, закомментированными повсюду
QApplication app(int argc, char** argv());
for (int q = 1; q <= 11; q++)
{
//int q = 4;
QString fileName=QStringLiteral("/Users/user/Desktop/imageTests/output/batch_%1.jpg").arg(q);
// QPrinter printer;
//QPrintDialog *dlg = new QPrintDialog(&printer,0);
//if(dlg->exec() == QDialog::Accepted) {
QPrinter printer(QPrinter::ScreenResolution);
printer.setResolution(3000);
//printer.setPageLayout(page_layout);
printer.setCopyCount(1);
printer.setDoubleSidedPrinting(false);
printer.setDuplex(QPrinter::DuplexNone);
printer.setColorMode(QPrinter::Color);
printer.setPageSize(QPrinter::Letter);
printer.setPaperSize(QPrinter::Letter);
printer.setPaperSource(QPrinter::Auto);
//printer.setCreator("Inkjet Plumber");
printer.setOrientation(QPrinter::Portrait);
printer.setPageMargins(0.0, 0.0, 0.0, 0.0, QPrinter::Inch);
//printer.setPageLayout(page_layout);
QString outputFileName = QStringLiteral("/Users/user/Desktop/testing/test%1.pdf").arg(q);
printer.setOutputFileName(outputFileName);
printer.setOutputFormat(QPrinter::PdfFormat);
QImage img(fileName);
QPainter painter(&printer);
painter.drawImage(QPoint(0,0),img);
painter.end();
//QMessageBox::information(this, tr("Title"), QString(fileName));
}