#include "NameCreater.h" #include #include #include #include #include #include #include #include #include #include #include "FiveToSingle.h" #include "OldFiveCreater.h" #include "BirthdayCreater.h" #define FONT_NAME "DFYuanStd-W8.otf" #define FONT_PATH ":/NameCreater/_exp/DFYuanStd-W8.otf" #define FONT_SIZE 120 #define VERSION "v1.2.0" NameCreater::NameCreater(QWidget *parent) : QMainWindow(parent) { ui.setupUi(this); connect(ui.fivesingle_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn); connect(ui.fiveold_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn); connect(ui.birthday_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn); QString font_path = FONT_PATH; QFile font_res(font_path); if (!font_res.open(QIODevice::ReadOnly)) { QMessageBox msgBox; msgBox.setText("Can not load font file!" + font_path); msgBox.exec(); font_res.close(); } int id = QFontDatabase::addApplicationFontFromData(font_res.readAll()); QStringList family_list = QFontDatabase::applicationFontFamilies(id); font = QFont(family_list.at(0)); font.setPixelSize(FONT_SIZE); font_color = QColor(0, 0, 0); QFont tital_font = QFont(font); tital_font.setPixelSize(20); QFont version_font = QFont(font); version_font.setPixelSize(12); //ui.tital_label->setFont(tital_font); ui.version_label->setFont(version_font); ui.version_label->setText(VERSION); QList titals = this->findChildren(QRegExp("tital_label")); foreach(auto tital, titals) { tital->setFont(tital_font); } font_res.close(); } void NameCreater::OnClickedReadBtn() { auto sender =(QPushButton*) QObject::sender(); auto fileContentReady = [this, sender](const QString &fileName, const QByteArray &fileContent) { if (fileName.isEmpty()) { // No file was selected } else { // Use fileName and fileContent if(sender == ui.fivesingle_btn) FiveToSingle().generaImageFromCSV(fileName, fileContent, this->font, this->font_color); if(sender == ui.fiveold_btn) OldFiveCreater().generaImageFromCSV(fileName, fileContent, this->font, this->font_color); if (sender == ui.birthday_btn) BirthdayCreater().generaImageFromCSV(fileName, fileContent, this->font, this->font_color); } }; QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady); }