【发布时间】:2025-11-26 00:20:12
【问题描述】:
是的,我已经搜索了 *,并在我看到的 5 件事情中至少实现了 3 件,但没有成功。我是 C++ 新手,尝试通过 SoloLearn 学习,但那里只有基础知识。
我正在尝试开发一个开源软件来批量创建电子邮件签名,并以各种可能的格式导出这些签名。
到目前为止,我可以在 Windows 上搜索背景图像,将其显示为预览,但是我无法在图像中插入任何文本。这是我的代码的样子:
void CriaAssinaturas::on_selecionarImagemDeFundo_clicked()
{
QString filter = "All Files (*.*) ;; JPEG File (*.jpeg) ;; BMP File (*.bmp)";
QString file_name = QFileDialog::getOpenFileName(this, "Carregar uma imagem", QDir::homePath(), filter) ;
QMessageBox::information(this, "Arquivo selecionado:", file_name);
QFile file(file_name);
file.open(QIODevice::ReadWrite);
QPixmap previaAssinatura(file_name);
ui->exemploAssinatura->setPixmap(previaAssinatura);
}
// QString nome = ui->nomeInput->text();
// ui->showNome->setText(nome);
// QPainter pintaNome;
// pintaNome.drawText(630,170,"Print something");
void CriaAssinaturas::on_salvarAssinatura_clicked()
{
// ui->exemploAssinatura->grab().save("fileName.jpg");
QString file_name = QFileDialog::getSaveFileName(this, "Salvar uma imagem", QDir::homePath());
QMessageBox::information(this, "Arquivo salvo em QDir::homePath()", file_name);
}
void CriaAssinaturas::on_criarAssinatura_clicked()
{
QString txt = ui->nomeInput->text();
ui->showNome->setText(txt);
}
【问题讨论】:
-
你可以在 qpixmap 上使用 QPainter,drawtext
-
什么是 QLabel?
-
ui->showNome->setText(txt);显示我的 Qlabel。
-
已经尝试过使用 Qpainter: // QPainter pintaNome; // pintaNome.drawText(630,170,"Print something 该死的");