#include "NameCreater.h" #include #include #include #include #include #include #include #include #include #include #include "FiveToSingle.h" #include "OldFiveCreater.h" #include "BirthdayCreater.h" #include "TowelCreater.h" #include "NewFiveCreater.h" #define FONT_NAME "DFYuanStd-W8.otf" #define FONT_PATH ":/NameCreater/_exp/DFYuanStd-W8.otf" #define FONT_SIZE 120 #define TOWEL_FONT_PATH ":/NameCreater/_exp/W1.ttc" #define VERSION "v2.0.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); connect(ui.towel_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn); connect(ui.fivenew_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_res.close(); font_path = QString(TOWEL_FONT_PATH); QFile font_res_towel(font_path); if (!font_res_towel.open(QIODevice::ReadOnly)) { QMessageBox msgBox; msgBox.setText("Can not load font file!" + font_path); msgBox.exec(); font_res_towel.close(); } id = QFontDatabase::addApplicationFontFromData(font_res_towel.readAll()); font_towel = QFont(QFontDatabase::applicationFontFamilies(id).at(0)); font_towel.setPixelSize(240); font_towel.setLetterSpacing(QFont::PercentageSpacing, 42); 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 = findChildren(QRegExp("tital_label")); foreach(auto tital, titals) { tital->setFont(tital_font); } } 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); if(sender == ui.fivenew_btn) NewFiveCreater().generaImageFromCSV(fileName, fileContent, this->font, this->font_color); if(sender == ui.towel_btn) TowelCreater().generaImageFromCSV(fileName, fileContent, this->font_towel, this->font_color); } }; QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady); }