Add: 增加生日禮英文排列
This commit is contained in:
parent
b2602b5ef7
commit
8166fc30ae
@ -53,11 +53,26 @@ QList<NameInfo_t> BirthdayCreater::getNameByFileContent(Name_Type_e type, const
|
||||
QString name_tc = line;
|
||||
QStringList csvList = name_tc.split(',');
|
||||
|
||||
QString name, eng_name, bg_type;
|
||||
|
||||
QString name = csvList.at(0); //QString::fromLocal8Bit(csvList.at(0));
|
||||
QString bg_type = csvList.at(1);//QString::fromLocal8Bit(csvList.at(1));
|
||||
QString type_str = csvList.last();//QString::fromLocal8Bit(csvList.last());
|
||||
qDebug() << "row :" << row << " " << name << ", bg_type: " << bg_type;
|
||||
switch (type) {
|
||||
case Name_zh:
|
||||
name = csvList.at(0);
|
||||
bg_type = csvList.at(1);
|
||||
;
|
||||
break;
|
||||
case Name_zh_eng:
|
||||
name = csvList.at(0);
|
||||
eng_name = csvList.at(1);
|
||||
bg_type = csvList.at(2);
|
||||
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
qDebug() << "row :" << row << " " << name <<", eng: "<< eng_name << ", bg_type: " << bg_type;
|
||||
|
||||
if (name.compare("name") == 0) {
|
||||
//pass first line
|
||||
@ -65,6 +80,7 @@ QList<NameInfo_t> BirthdayCreater::getNameByFileContent(Name_Type_e type, const
|
||||
}
|
||||
|
||||
info.name1 = name;
|
||||
info.name_eng = eng_name;
|
||||
info.name2 = bg_type;
|
||||
|
||||
nameList.append(info);
|
||||
@ -89,33 +105,93 @@ void BirthdayCreater::generaImageFromCSV(Name_Type_e type, const QString& filena
|
||||
scene.setBackgroundBrush(QBrush(QColor(255, 255, 255)));
|
||||
QGraphicsView view(&scene);
|
||||
|
||||
switch (type)
|
||||
|
||||
{
|
||||
case Name_zh:
|
||||
for (int idx = 0; idx < nameList.length(); idx++) {
|
||||
|
||||
for (int idx = 0; idx < nameList.length(); idx++) {
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == 0) {
|
||||
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == 0) {
|
||||
QGraphicsRectItem* bg_item = new QGraphicsRectItem(0, 0, BG_WIDTH, BG_HEIGHT);
|
||||
bg_item->setBrush(QBrush(QColor(255, 255, 255)));
|
||||
//QGraphicsPixmapItem* bg_item = QGraphicsPixmapItem(QPixmap(BG_SMAPLE_PATH));
|
||||
scene.addItem(bg_item);
|
||||
|
||||
QGraphicsRectItem* bg_item = new QGraphicsRectItem(0, 0, BG_WIDTH, BG_HEIGHT);
|
||||
bg_item->setBrush(QBrush(QColor(255, 255, 255)));
|
||||
//QGraphicsPixmapItem* bg_item = QGraphicsPixmapItem(QPixmap(BG_SMAPLE_PATH));
|
||||
scene.addItem(bg_item);
|
||||
}
|
||||
NameInfo_t name_info = nameList.at(idx);
|
||||
int col_index = idx % MAX_LABEL_IN_PAPER;
|
||||
QString label_rel_path = label_bg_map[name_info.name2];
|
||||
QGraphicsPixmapItem* label_item = new QGraphicsPixmapItem(QPixmap(label_rel_path));
|
||||
label_item->setPos(int(LABEL_POS_START.x() + LABEL_POS_X_OFFSET * col_index), int(LABEL_POS_START.y()));
|
||||
label_item->setOpacity(1);
|
||||
scene.addItem(label_item);
|
||||
|
||||
int chrismas_y_offset = 0;
|
||||
if (name_info.name2.compare("co") == 0 || name_info.name2.compare("ol") == 0 ||
|
||||
name_info.name2.compare("st") == 0 || name_info.name2.compare("sn") == 0) {
|
||||
chrismas_y_offset = 30;
|
||||
}
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
int name_word_len = name_info.name1.length();
|
||||
qreal two_word_y = (name_word_len == 2) ? NAME_TWO_WORD_OFFSET / 2 : 0;
|
||||
qreal offset_y = (name_word_len == 2) ? NAME_TWO_WORD_OFFSET : NAME_THREE_WORD_OFFSET;
|
||||
|
||||
for (int w = 0; w < name_word_len; w++) {
|
||||
QGraphicsTextItem* word_item = new QGraphicsTextItem(name_info.name1.at(w));
|
||||
word_item->setFont(font);
|
||||
word_item->setDefaultTextColor(font_color);
|
||||
if (i == 0) {
|
||||
word_item->setPos(label_item->x() + NAME_OFFSET_START.x(), label_item->y() + NAME_OFFSET_START.y() + two_word_y + chrismas_y_offset + offset_y * w);
|
||||
}
|
||||
else {
|
||||
word_item->setTransform(QTransform().fromScale(-1, -1));
|
||||
word_item->setPos(label_item->x() + NAME_OFFSET_REVERSE_START.x(), label_item->y() + NAME_OFFSET_REVERSE_START.y() - two_word_y - chrismas_y_offset - offset_y * w);
|
||||
}
|
||||
scene.addItem(word_item);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == (MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
||||
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||
QString file_name = QString("Birthday_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||
saveToImage(file_name, &scene);
|
||||
export_times++;
|
||||
|
||||
scene.clear();
|
||||
}
|
||||
}
|
||||
NameInfo_t name_info = nameList.at(idx);
|
||||
int col_index = idx % MAX_LABEL_IN_PAPER;
|
||||
QString label_rel_path = label_bg_map[name_info.name2];
|
||||
QGraphicsPixmapItem* label_item = new QGraphicsPixmapItem(QPixmap(label_rel_path));
|
||||
label_item->setPos(int(LABEL_POS_START.x() + LABEL_POS_X_OFFSET * col_index), int(LABEL_POS_START.y()));
|
||||
label_item->setOpacity(1);
|
||||
scene.addItem(label_item);
|
||||
break;
|
||||
case Name_eng:
|
||||
break;
|
||||
case Name_zh_eng:
|
||||
for (int idx = 0; idx < nameList.length(); idx++) {
|
||||
|
||||
int chrismas_y_offset = 0;
|
||||
if (name_info.name2.compare("co") == 0 || name_info.name2.compare("ol") == 0 ||
|
||||
name_info.name2.compare("st") == 0 || name_info.name2.compare("sn") == 0) {
|
||||
chrismas_y_offset = 30;
|
||||
}
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == 0) {
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
QGraphicsRectItem* bg_item = new QGraphicsRectItem(0, 0, BG_WIDTH, BG_HEIGHT);
|
||||
bg_item->setBrush(QBrush(QColor(255, 255, 255)));
|
||||
//QGraphicsPixmapItem* bg_item = QGraphicsPixmapItem(QPixmap(BG_SMAPLE_PATH));
|
||||
scene.addItem(bg_item);
|
||||
|
||||
}
|
||||
NameInfo_t name_info = nameList.at(idx);
|
||||
int col_index = idx % MAX_LABEL_IN_PAPER;
|
||||
QString label_rel_path = label_bg_map[name_info.name2];
|
||||
QGraphicsPixmapItem* label_item = new QGraphicsPixmapItem(QPixmap(label_rel_path));
|
||||
label_item->setPos(int(LABEL_POS_START.x() + LABEL_POS_X_OFFSET * col_index), int(LABEL_POS_START.y()));
|
||||
label_item->setOpacity(1);
|
||||
scene.addItem(label_item);
|
||||
|
||||
int chrismas_y_offset = 0;
|
||||
if (name_info.name2.compare("co") == 0 || name_info.name2.compare("ol") == 0 ||
|
||||
name_info.name2.compare("st") == 0 || name_info.name2.compare("sn") == 0) {
|
||||
chrismas_y_offset = 30;
|
||||
}
|
||||
|
||||
// add ZH word
|
||||
int name_word_len = name_info.name1.length();
|
||||
qreal two_word_y = (name_word_len == 2) ? NAME_TWO_WORD_OFFSET / 2 : 0;
|
||||
qreal offset_y = (name_word_len == 2) ? NAME_TWO_WORD_OFFSET : NAME_THREE_WORD_OFFSET;
|
||||
@ -124,28 +200,41 @@ void BirthdayCreater::generaImageFromCSV(Name_Type_e type, const QString& filena
|
||||
QGraphicsTextItem* word_item = new QGraphicsTextItem(name_info.name1.at(w));
|
||||
word_item->setFont(font);
|
||||
word_item->setDefaultTextColor(font_color);
|
||||
if (i == 0) {
|
||||
word_item->setPos(label_item->x() + NAME_OFFSET_START.x(), label_item->y() + NAME_OFFSET_START.y() + two_word_y + chrismas_y_offset + offset_y * w);
|
||||
}
|
||||
else {
|
||||
word_item->setTransform(QTransform().fromScale(-1, -1));
|
||||
word_item->setPos(label_item->x() + NAME_OFFSET_REVERSE_START.x(), label_item->y() + NAME_OFFSET_REVERSE_START.y() - two_word_y - chrismas_y_offset - offset_y * w);
|
||||
}
|
||||
word_item->setPos(label_item->x() + NAME_OFFSET_START.x(), label_item->y() + NAME_OFFSET_START.y() + two_word_y + chrismas_y_offset + offset_y * w);
|
||||
scene.addItem(word_item);
|
||||
}
|
||||
|
||||
//TODO: add English world
|
||||
QGraphicsTextItem* eng_word_item = new QGraphicsTextItem(name_info.name_eng);
|
||||
QFont _new_font = QFont(EnglisthFont());
|
||||
_new_font.setWeight(QFont::ExtraBold);
|
||||
int _new_size = getFontSizebyStr(_new_font, 120, 480, name_info.name_eng);
|
||||
_new_font.setPixelSize(_new_size);
|
||||
|
||||
eng_word_item->setFont(_new_font);
|
||||
QRectF rect = eng_word_item->boundingRect();
|
||||
eng_word_item->setDefaultTextColor(font_color);
|
||||
|
||||
eng_word_item->setRotation(-90);
|
||||
eng_word_item->setPos(label_item->x() + 140.0 - rect.height()/2.0, label_item->y() + 1580 - chrismas_y_offset + rect.width()/2);
|
||||
scene.addItem(eng_word_item);
|
||||
|
||||
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == (MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
||||
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||
QString file_name = QString("Birthday_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||
saveToImage(file_name, &scene);
|
||||
export_times++;
|
||||
scene.clear();
|
||||
}
|
||||
}
|
||||
|
||||
if ((idx % MAX_LABEL_IN_PAPER) == (MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
||||
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||
QString file_name = QString("Birthday_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||
saveToImage(file_name, &scene);
|
||||
export_times++;
|
||||
|
||||
scene.clear();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
QMessageBox msgBox;
|
||||
msgBox.setText(QString().asprintf("Export Finshed. Count:%d", export_times));
|
||||
msgBox.exec();
|
||||
|
||||
@ -112,6 +112,7 @@ QList<NameInfo_t> INameCreater::getNameByFile(Name_Type_e type, const QString& f
|
||||
|
||||
QList<NameInfo_t> INameCreater::getNameByFileContent(Name_Type_e type, const QByteArray& conetent)
|
||||
{
|
||||
(void)type;
|
||||
QList<NameInfo_t> nameList;
|
||||
QTextCodec* tc = QTextCodec::codecForName("Big5");
|
||||
QString codec = tc->toUnicode(conetent.data());
|
||||
@ -159,7 +160,7 @@ int INameCreater::getFontSizebyStr(const QFont& font, int max_font_size,int max_
|
||||
QFont _font(font);
|
||||
int font_size = max_font_size;
|
||||
while (font_size > 10) {
|
||||
_font.setPixelSize(max_font_size);
|
||||
_font.setPixelSize(font_size);
|
||||
QFontMetrics fm(_font);
|
||||
if (fm.horizontalAdvance(str) <= max_label_width) break;
|
||||
font_size--;
|
||||
|
||||
@ -10,6 +10,7 @@
|
||||
struct NameInfo_t {
|
||||
QString name1;
|
||||
QString name2;
|
||||
QString name_eng;
|
||||
QString bg_path;
|
||||
bool is_number_bg;
|
||||
int bg_type;
|
||||
@ -26,6 +27,13 @@ public:
|
||||
INameCreater();
|
||||
~INameCreater();
|
||||
|
||||
void setEnglishFont(const QFont& font) {
|
||||
eng_Font = QFont(font);
|
||||
}
|
||||
|
||||
QFont EnglisthFont() const {
|
||||
return eng_Font;
|
||||
}
|
||||
|
||||
protected:
|
||||
void saveToImage(const QString& filename, QGraphicsScene* scene);
|
||||
@ -33,8 +41,9 @@ protected:
|
||||
QList<NameInfo_t> getNameByFileContent(Name_Type_e type, const QByteArray& conetent);
|
||||
|
||||
virtual void generaImageFromCSV(Name_Type_e type, const QString& filename, const QByteArray& filecontent, const QFont& font, const QColor& font_color);
|
||||
|
||||
private:
|
||||
int getFontSizebyStr(const QFont& font, int max_font_size, int max_label_width, const QString& str);
|
||||
private:
|
||||
|
||||
QFont eng_Font;
|
||||
|
||||
};
|
||||
@ -17,95 +17,114 @@
|
||||
#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 ENGLISH_FONT_PATH ":/NameCreater/_exp/AcuminVariableConcept.otf"
|
||||
|
||||
#define VERSION "v2.0.0"
|
||||
#define FONT_SIZE 120
|
||||
#define VERSION "v2.1.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);
|
||||
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);
|
||||
connect(ui.birthday_zh_eng_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();
|
||||
}
|
||||
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();
|
||||
int id = QFontDatabase::addApplicationFontFromData(font_res.readAll());
|
||||
QStringList family_list = QFontDatabase::applicationFontFamilies(id);
|
||||
|
||||
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);
|
||||
font = QFont(family_list.at(0));
|
||||
font.setPixelSize(FONT_SIZE);
|
||||
font_res.close();
|
||||
|
||||
QFont tital_font = QFont(font);
|
||||
tital_font.setPixelSize(20);
|
||||
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();
|
||||
}
|
||||
|
||||
QFont version_font = QFont(font);
|
||||
version_font.setPixelSize(12);
|
||||
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);
|
||||
|
||||
//ui.tital_label->setFont(tital_font);
|
||||
ui.version_label->setFont(version_font);
|
||||
ui.version_label->setText(VERSION);
|
||||
|
||||
font_path = QString(ENGLISH_FONT_PATH);
|
||||
QFile font_res_eng(font_path);
|
||||
if (!font_res_eng.open(QIODevice::ReadOnly)) {
|
||||
QMessageBox msgBox;
|
||||
msgBox.setText("Can not load font file!" + font_path);
|
||||
msgBox.exec();
|
||||
font_res_eng.close();
|
||||
}
|
||||
|
||||
id = QFontDatabase::addApplicationFontFromData(font_res_eng.readAll());
|
||||
font_english = QFont(QFontDatabase::applicationFontFamilies(id).at(0));
|
||||
|
||||
|
||||
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<QLabel*> titals = findChildren<QLabel*>(QRegExp("tital_label"));
|
||||
foreach(auto tital, titals) {
|
||||
tital->setFont(tital_font);
|
||||
}
|
||||
foreach(auto tital, titals) {
|
||||
tital->setFont(tital_font);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
void NameCreater::OnClickedReadBtn() {
|
||||
auto sender =(QPushButton*) QObject::sender();
|
||||
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(Name_Type_e::Name_zh,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(Name_Type_e::Name_zh, fileName, fileContent, this->font, this->font_color);
|
||||
if(sender == ui.fivenew_btn) NewFiveCreater().generaImageFromCSV(Name_Type_e::Name_zh, fileName, fileContent, this->font, this->font_color);
|
||||
if(sender == ui.towel_btn) TowelCreater().generaImageFromCSV(Name_Type_e::Name_zh, fileName, fileContent, this->font_towel, this->font_color);
|
||||
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(Name_Type_e::Name_zh,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(Name_Type_e::Name_zh, fileName, fileContent, this->font, this->font_color);
|
||||
if(sender == ui.fivenew_btn) NewFiveCreater().generaImageFromCSV(Name_Type_e::Name_zh, fileName, fileContent, this->font, this->font_color);
|
||||
if(sender == ui.towel_btn) TowelCreater().generaImageFromCSV(Name_Type_e::Name_zh, fileName, fileContent, this->font_towel, this->font_color);
|
||||
if (sender == ui.birthday_zh_eng_btn) {
|
||||
BirthdayCreater creater;
|
||||
creater.setEnglishFont(font_english);
|
||||
creater.generaImageFromCSV(Name_Type_e::Name_zh_eng, fileName, fileContent, this->font, this->font_color);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady);
|
||||
|
||||
}
|
||||
};
|
||||
QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady);
|
||||
}
|
||||
|
||||
@ -12,7 +12,7 @@ public:
|
||||
|
||||
private:
|
||||
Ui::NameCreaterClass ui;
|
||||
QFont font, font_towel;
|
||||
QFont font, font_towel, font_english;
|
||||
|
||||
QColor font_color;
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 7.0.2, 2023-05-06T07:41:44. -->
|
||||
<!-- Written by QtCreator 7.0.2, 2023-05-16T20:01:59. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
@ -390,23 +390,6 @@
|
||||
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
|
||||
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
|
||||
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
|
||||
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
|
||||
<value type="QString">0</value>
|
||||
<value type="QString">1</value>
|
||||
<value type="QString">2</value>
|
||||
<value type="QString">3</value>
|
||||
<value type="QString">4</value>
|
||||
<value type="QString">5</value>
|
||||
<value type="QString">6</value>
|
||||
<value type="QString">7</value>
|
||||
<value type="QString">8</value>
|
||||
<value type="QString">9</value>
|
||||
<value type="QString">10</value>
|
||||
<value type="QString">11</value>
|
||||
<value type="QString">12</value>
|
||||
<value type="QString">13</value>
|
||||
<value type="QString">14</value>
|
||||
</valuelist>
|
||||
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">NameCreater</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">WebAssembly.RunConfiguration.EmrunD:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
||||
|
||||
@ -66,5 +66,6 @@
|
||||
<file>resource/five/ng_3.jpg</file>
|
||||
<file>resource/five/ng_4.jpg</file>
|
||||
<file>resource/five/ng_5.jpg</file>
|
||||
<file>_exp/AcuminVariableConcept.otf</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
BIN
NameCreater/_exp/AcuminVariableConcept.otf
Normal file
BIN
NameCreater/_exp/AcuminVariableConcept.otf
Normal file
Binary file not shown.
21
NameCreater/_exp/生日禮範例_中英.csv
Normal file
21
NameCreater/_exp/生日禮範例_中英.csv
Normal file
@ -0,0 +1,21 @@
|
||||
name,eng_name,bg_type
|
||||
Á¤_¹ä,Alice,r
|
||||
Á¤_¹ä,Alice,r
|
||||
Á¤_¹ä,Alice,r
|
||||
Á¤_¹ä,Alice,r
|
||||
Á¤_¹ä,Alice,r
|
||||
¸â¨°ºÓ,George,sn
|
||||
¸â¨°ºÓ,George,co
|
||||
¸â¨°ºÓ,George,ol
|
||||
¸â¨°ºÓ,George,m
|
||||
¸â¨°ºÓ,George,y
|
||||
¸â¨°ºÓ,George,b
|
||||
³¯§Ó,Jolin,g
|
||||
³¯¦u§Ó,Chirs,m
|
||||
³¯¦u§Ó,xxxxxxxdgde,p
|
||||
³¯§Ó,gfdgadgdd,r
|
||||
§d¨Î¹a,Jolin,co
|
||||
§d¨Î¹a,Jolin,ol
|
||||
§d¹a,Jessica,sn
|
||||
§d¹a,Arial,st
|
||||
§d¹a,Arial,b
|
||||
|
Loading…
x
Reference in New Issue
Block a user