完成所有功能整合
@ -3,7 +3,7 @@
|
|||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QDateTime>
|
||||||
|
|
||||||
|
|
||||||
#define LABEL_HIGHT_LIMIT 350.0
|
#define LABEL_HIGHT_LIMIT 350.0
|
||||||
@ -137,7 +137,8 @@ void BirthdayCreater::generaImageFromCSV(const QString& filename, const QByteArr
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((idx % MAX_LABEL_IN_PAPER) == (MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
if ((idx % MAX_LABEL_IN_PAPER) == (MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
||||||
QString file_name = QString("%1_.jpg").arg(QString::number(export_times + 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);
|
saveToImage(file_name, &scene);
|
||||||
export_times++;
|
export_times++;
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
#include "FiveToSingle.h"
|
#include "FiveToSingle.h"
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QDateTime>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -173,7 +174,8 @@ void FiveToSingle::generaImageFromCSV(const QString& filename, const QByteArray&
|
|||||||
}
|
}
|
||||||
bool is_export_page = ((idx + 1) % BG_POS_COUNT == 0);
|
bool is_export_page = ((idx + 1) % BG_POS_COUNT == 0);
|
||||||
if (is_export_page || n == nameList.count() - 1) {
|
if (is_export_page || n == nameList.count() - 1) {
|
||||||
QString file_name = QString("%1_.jpg").arg(QString::number(export_times + 1));
|
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||||
|
QString file_name = QString("signle_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||||
saveToImage(file_name, &scene);
|
saveToImage(file_name, &scene);
|
||||||
export_times++;
|
export_times++;
|
||||||
|
|
||||||
|
|||||||
@ -14,6 +14,7 @@
|
|||||||
#include "OldFiveCreater.h"
|
#include "OldFiveCreater.h"
|
||||||
#include "BirthdayCreater.h"
|
#include "BirthdayCreater.h"
|
||||||
#include "TowelCreater.h"
|
#include "TowelCreater.h"
|
||||||
|
#include "NewFiveCreater.h"
|
||||||
|
|
||||||
|
|
||||||
#define FONT_NAME "DFYuanStd-W8.otf"
|
#define FONT_NAME "DFYuanStd-W8.otf"
|
||||||
@ -22,7 +23,7 @@
|
|||||||
|
|
||||||
#define TOWEL_FONT_PATH ":/NameCreater/_exp/W1.ttc"
|
#define TOWEL_FONT_PATH ":/NameCreater/_exp/W1.ttc"
|
||||||
|
|
||||||
#define VERSION "v1.2.0"
|
#define VERSION "v2.0.0"
|
||||||
|
|
||||||
|
|
||||||
NameCreater::NameCreater(QWidget *parent)
|
NameCreater::NameCreater(QWidget *parent)
|
||||||
@ -30,9 +31,10 @@ NameCreater::NameCreater(QWidget *parent)
|
|||||||
{
|
{
|
||||||
ui.setupUi(this);
|
ui.setupUi(this);
|
||||||
connect(ui.fivesingle_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.fiveold_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn);
|
||||||
connect(ui.birthday_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.towel_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn);
|
||||||
|
connect(ui.fivenew_btn, &QPushButton::released, this, &NameCreater::OnClickedReadBtn);
|
||||||
|
|
||||||
QString font_path = FONT_PATH;
|
QString font_path = FONT_PATH;
|
||||||
QFile font_res(font_path);
|
QFile font_res(font_path);
|
||||||
@ -97,10 +99,12 @@ void NameCreater::OnClickedReadBtn() {
|
|||||||
else {
|
else {
|
||||||
// Use fileName and fileContent
|
// Use fileName and fileContent
|
||||||
if(sender == ui.fivesingle_btn) FiveToSingle().generaImageFromCSV(fileName, fileContent, this->font, this->font_color);
|
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.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.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);
|
if(sender == ui.towel_btn) TowelCreater().generaImageFromCSV(fileName, fileContent, this->font_towel, this->font_color);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady);
|
QFileDialog::getOpenFileContent("CSV (*.csv)", fileContentReady);
|
||||||
|
|||||||
@ -13,13 +13,15 @@ HEADERS += ./resource.h \
|
|||||||
./FiveToSingle.h \
|
./FiveToSingle.h \
|
||||||
./INameCreater.h \
|
./INameCreater.h \
|
||||||
./OldFiveCreater.h \
|
./OldFiveCreater.h \
|
||||||
./TowelCreater.h
|
./TowelCreater.h \
|
||||||
|
./NewFiveCreater.h
|
||||||
SOURCES += ./NameCreater.cpp \
|
SOURCES += ./NameCreater.cpp \
|
||||||
./main.cpp \
|
./main.cpp \
|
||||||
./BirthdayCreater.cpp \
|
./BirthdayCreater.cpp \
|
||||||
./OldFiveCreater.cpp \
|
./OldFiveCreater.cpp \
|
||||||
./FiveToSingle.cpp \
|
./FiveToSingle.cpp \
|
||||||
./INameCreater.cpp \
|
./INameCreater.cpp \
|
||||||
./TowelCreater.cpp
|
./TowelCreater.cpp \
|
||||||
|
./NewFiveCreater.cpp
|
||||||
FORMS += ./NameCreater.ui
|
FORMS += ./NameCreater.ui
|
||||||
RESOURCES += NameCreater.qrc
|
RESOURCES += NameCreater.qrc
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE QtCreatorProject>
|
<!DOCTYPE QtCreatorProject>
|
||||||
<!-- Written by QtCreator 7.0.2, 2023-05-04T22:24:36. -->
|
<!-- Written by QtCreator 7.0.2, 2023-05-06T07:41:44. -->
|
||||||
<qtcreator>
|
<qtcreator>
|
||||||
<data>
|
<data>
|
||||||
<variable>EnvironmentId</variable>
|
<variable>EnvironmentId</variable>
|
||||||
@ -233,6 +233,159 @@
|
|||||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
|
||||||
</valuemap>
|
</valuemap>
|
||||||
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
|
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||||
|
<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="CustomOutputParsers"/>
|
||||||
|
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
||||||
|
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:D:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">D:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
||||||
|
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
|
||||||
|
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||||
|
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||||
|
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
|
||||||
|
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||||
|
<value type="QString" key="RunConfiguration.WorkingDirectory.default">D:/_develop/_project/NameCreater/build-NameCreater-Desktop_Qt_5_15_2_MinGW_64_bit-Debug</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||||
|
</valuemap>
|
||||||
|
</data>
|
||||||
|
<data>
|
||||||
|
<variable>ProjectExplorer.Project.Target.1</variable>
|
||||||
|
<valuemap type="QVariantMap">
|
||||||
|
<value type="QString" key="DeviceType">WebAssemblyDeviceType</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 5.15.2 WebAssembly</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Qt 5.15.2 WebAssembly</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt5.5152.wasm_32_kit</value>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">-1</value>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||||
|
<value type="int" key="EnableQmlDebugging">0</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\_develop\_project\NameCreater\build-NameCreater-Qt_5_15_2_WebAssembly-Debug</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">D:/_develop/_project/NameCreater/build-NameCreater-Qt_5_15_2_WebAssembly-Debug</value>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
|
||||||
|
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
|
||||||
|
<valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Debug</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
|
||||||
|
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\_develop\_project\NameCreater\build-NameCreater-Qt_5_15_2_WebAssembly-Release</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">D:/_develop/_project/NameCreater/build-NameCreater-Qt_5_15_2_WebAssembly-Release</value>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
|
||||||
|
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
|
||||||
|
<valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
|
||||||
|
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
|
||||||
|
<value type="int" key="QtQuickCompiler">0</value>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||||
|
<value type="int" key="EnableQmlDebugging">0</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\_develop\_project\NameCreater\build-NameCreater-Qt_5_15_2_WebAssembly-Profile</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">D:/_develop/_project/NameCreater/build-NameCreater-Qt_5_15_2_WebAssembly-Profile</value>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
|
||||||
|
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
|
||||||
|
<valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||||
|
</valuemap>
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||||
|
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
|
||||||
|
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||||
|
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||||
|
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Profile</value>
|
||||||
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
|
||||||
|
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
|
||||||
|
<value type="int" key="QtQuickCompiler">0</value>
|
||||||
|
<value type="int" key="SeparateDebugInfo">0</value>
|
||||||
|
</valuemap>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.BuildConfigurationCount">3</value>
|
||||||
|
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">0</value>
|
||||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||||
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
|
<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.QmlProfiler.Settings.UseGlobalSettings">true</value>
|
||||||
@ -255,23 +408,21 @@
|
|||||||
<value type="QString">14</value>
|
<value type="QString">14</value>
|
||||||
</valuelist>
|
</valuelist>
|
||||||
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
||||||
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">NameCreater</value>
|
||||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">WebAssembly.RunConfiguration.EmrunD:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
||||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:D:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
|
||||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">D:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">D:/_develop/_project/NameCreater/NameCreater/NameCreater.pro</value>
|
||||||
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
|
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
|
||||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
|
||||||
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
|
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
|
||||||
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||||
<value type="QString" key="RunConfiguration.WorkingDirectory.default">D:/_develop/_project/NameCreater/build-NameCreater-Desktop_Qt_5_15_2_MinGW_64_bit-Debug</value>
|
<value type="QString" key="WASM.WebBrowserSelectionAspect.Browser">chrome</value>
|
||||||
</valuemap>
|
</valuemap>
|
||||||
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||||
</valuemap>
|
</valuemap>
|
||||||
</data>
|
</data>
|
||||||
<data>
|
<data>
|
||||||
<variable>ProjectExplorer.Project.TargetCount</variable>
|
<variable>ProjectExplorer.Project.TargetCount</variable>
|
||||||
<value type="qlonglong">1</value>
|
<value type="qlonglong">2</value>
|
||||||
</data>
|
</data>
|
||||||
<data>
|
<data>
|
||||||
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
|
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
|
||||||
|
|||||||
@ -45,5 +45,26 @@
|
|||||||
<file>resource/w.jpg</file>
|
<file>resource/w.jpg</file>
|
||||||
<file>resource/y.jpg</file>
|
<file>resource/y.jpg</file>
|
||||||
<file>_exp/W1.ttc</file>
|
<file>_exp/W1.ttc</file>
|
||||||
|
<file>resource/five/b_1.jpg</file>
|
||||||
|
<file>resource/five/b_2.jpg</file>
|
||||||
|
<file>resource/five/b_3.jpg</file>
|
||||||
|
<file>resource/five/b_4.jpg</file>
|
||||||
|
<file>resource/five/b_5.jpg</file>
|
||||||
|
<file>resource/five/g_1.jpg</file>
|
||||||
|
<file>resource/five/g_2.jpg</file>
|
||||||
|
<file>resource/five/g_3.jpg</file>
|
||||||
|
<file>resource/five/g_4.jpg</file>
|
||||||
|
<file>resource/five/g_5.jpg</file>
|
||||||
|
<file>resource/five/nb_1.jpg</file>
|
||||||
|
<file>resource/five/nb_2.jpg</file>
|
||||||
|
<file>resource/five/nb_3.jpg</file>
|
||||||
|
<file>resource/five/nb_4.jpg</file>
|
||||||
|
<file>resource/five/nb_5.jpg</file>
|
||||||
|
<file>resource/five/new_bg_sample.jpg</file>
|
||||||
|
<file>resource/five/ng_1.jpg</file>
|
||||||
|
<file>resource/five/ng_2.jpg</file>
|
||||||
|
<file>resource/five/ng_3.jpg</file>
|
||||||
|
<file>resource/five/ng_4.jpg</file>
|
||||||
|
<file>resource/five/ng_5.jpg</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
@ -6,8 +6,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>1013</width>
|
<width>946</width>
|
||||||
<height>651</height>
|
<height>589</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="font">
|
<property name="font">
|
||||||
@ -17,7 +17,7 @@
|
|||||||
<string>NameCreater</string>
|
<string>NameCreater</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
<string notr="true">color: rgb(0, 0, 0);</string>
|
<string notr="true"/>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="centralWidget">
|
<widget class="QWidget" name="centralWidget">
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
@ -63,6 +63,13 @@ background-color: rgb(0, 0, 0);
|
|||||||
<height>441</height>
|
<height>441</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">QFrame#frame{
|
||||||
|
border: 3px solid #FFFFFF;
|
||||||
|
border-color: rgb(255, 255, 255);
|
||||||
|
|
||||||
|
}</string>
|
||||||
|
</property>
|
||||||
<property name="frameShape">
|
<property name="frameShape">
|
||||||
<enum>QFrame::StyledPanel</enum>
|
<enum>QFrame::StyledPanel</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -70,7 +77,67 @@ background-color: rgb(0, 0, 0);
|
|||||||
<enum>QFrame::Raised</enum>
|
<enum>QFrame::Raised</enum>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item row="0" column="0">
|
<item row="2" column="0">
|
||||||
|
<widget class="QPushButton" name="fivenew_btn">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>76</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Open File</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0">
|
||||||
|
<widget class="QLabel" name="tital_label_4">
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<family>Yu Gothic UI</family>
|
||||||
|
<pointsize>20</pointsize>
|
||||||
|
<weight>50</weight>
|
||||||
|
<italic>false</italic>
|
||||||
|
<bold>false</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">
|
||||||
|
color: rgb(255, 255, 255);
|
||||||
|
</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>生日禮產生器</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="tital_label_3">
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<family>Yu Gothic UI</family>
|
||||||
|
<pointsize>20</pointsize>
|
||||||
|
<weight>50</weight>
|
||||||
|
<italic>false</italic>
|
||||||
|
<bold>false</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">color: rgb(255, 255, 255);
|
||||||
|
</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>五入組產生器</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
<widget class="QLabel" name="tital_label">
|
<widget class="QLabel" name="tital_label">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
@ -93,8 +160,8 @@ background-color: rgb(0, 0, 0);
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QPushButton" name="fiveold_btn">
|
<widget class="QPushButton" name="fivesingle_btn">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>0</width>
|
<width>0</width>
|
||||||
@ -106,53 +173,7 @@ background-color: rgb(0, 0, 0);
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="3" column="1">
|
||||||
<widget class="QLabel" name="tital_label_2">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<family>Yu Gothic UI</family>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<italic>false</italic>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="styleSheet">
|
|
||||||
<string notr="true">color: rgb(255, 255, 255);
|
|
||||||
</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>五入組產生器(舊)</string>
|
|
||||||
</property>
|
|
||||||
<property name="alignment">
|
|
||||||
<set>Qt::AlignCenter</set>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="0">
|
|
||||||
<widget class="QLabel" name="tital_label_4">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<family>Yu Gothic UI</family>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<italic>false</italic>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="styleSheet">
|
|
||||||
<string notr="true">color: rgb(255, 255, 255);
|
|
||||||
</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>生日禮產生器</string>
|
|
||||||
</property>
|
|
||||||
<property name="alignment">
|
|
||||||
<set>Qt::AlignCenter</set>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="4" column="0">
|
|
||||||
<widget class="QLabel" name="tital_label_5">
|
<widget class="QLabel" name="tital_label_5">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
@ -175,56 +196,7 @@ background-color: rgb(0, 0, 0);
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="1">
|
<item row="4" column="0">
|
||||||
<widget class="QPushButton" name="fivenew_btn">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>76</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Open File</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QPushButton" name="fivesingle_btn">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>76</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Open File</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="1">
|
|
||||||
<widget class="QLabel" name="tital_label_3">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<family>Yu Gothic UI</family>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<italic>false</italic>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="styleSheet">
|
|
||||||
<string notr="true">color: rgb(255, 255, 255);
|
|
||||||
</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>五入組產生器(新)</string>
|
|
||||||
</property>
|
|
||||||
<property name="alignment">
|
|
||||||
<set>Qt::AlignCenter</set>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="0">
|
|
||||||
<widget class="QPushButton" name="birthday_btn">
|
<widget class="QPushButton" name="birthday_btn">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
@ -237,7 +209,7 @@ background-color: rgb(0, 0, 0);
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="5" column="0">
|
<item row="4" column="1">
|
||||||
<widget class="QPushButton" name="towel_btn">
|
<widget class="QPushButton" name="towel_btn">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
@ -258,7 +230,7 @@ background-color: rgb(0, 0, 0);
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>1013</width>
|
<width>946</width>
|
||||||
<height>21</height>
|
<height>21</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
|||||||
@ -179,6 +179,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="BirthdayCreater.cpp" />
|
<ClCompile Include="BirthdayCreater.cpp" />
|
||||||
|
<ClCompile Include="NewFiveCreater.cpp" />
|
||||||
<ClCompile Include="OldFiveCreater.cpp" />
|
<ClCompile Include="OldFiveCreater.cpp" />
|
||||||
<ClCompile Include="TowelCreater.cpp" />
|
<ClCompile Include="TowelCreater.cpp" />
|
||||||
<QtRcc Include="NameCreater.qrc" />
|
<QtRcc Include="NameCreater.qrc" />
|
||||||
@ -193,6 +194,7 @@
|
|||||||
<ClInclude Include="BirthdayCreater.h" />
|
<ClInclude Include="BirthdayCreater.h" />
|
||||||
<ClInclude Include="FiveToSingle.h" />
|
<ClInclude Include="FiveToSingle.h" />
|
||||||
<ClInclude Include="INameCreater.h" />
|
<ClInclude Include="INameCreater.h" />
|
||||||
|
<ClInclude Include="NewFiveCreater.h" />
|
||||||
<ClInclude Include="OldFiveCreater.h" />
|
<ClInclude Include="OldFiveCreater.h" />
|
||||||
<ClInclude Include="resource.h" />
|
<ClInclude Include="resource.h" />
|
||||||
<ClInclude Include="TowelCreater.h" />
|
<ClInclude Include="TowelCreater.h" />
|
||||||
|
|||||||
@ -58,6 +58,9 @@
|
|||||||
<ClCompile Include="TowelCreater.cpp">
|
<ClCompile Include="TowelCreater.cpp">
|
||||||
<Filter>Creaters</Filter>
|
<Filter>Creaters</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="NewFiveCreater.cpp">
|
||||||
|
<Filter>Creaters</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="resource.h">
|
<ClInclude Include="resource.h">
|
||||||
@ -78,6 +81,9 @@
|
|||||||
<ClInclude Include="TowelCreater.h">
|
<ClInclude Include="TowelCreater.h">
|
||||||
<Filter>Creaters</Filter>
|
<Filter>Creaters</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="NewFiveCreater.h">
|
||||||
|
<Filter>Creaters</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="NameCreater.rc">
|
<ResourceCompile Include="NameCreater.rc">
|
||||||
|
|||||||
144
NameCreater/NewFiveCreater.cpp
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
#include "NewFiveCreater.h"
|
||||||
|
#include <QTextCodec>
|
||||||
|
#include <QTextStream>
|
||||||
|
#include <QDebug>
|
||||||
|
#include <QMessageBox>
|
||||||
|
#include <QDateTime>
|
||||||
|
|
||||||
|
|
||||||
|
static QString BG_SMAPLE_PATH = ":/NameCreater/resource/five/new_bg_sample.jpg";
|
||||||
|
static QString LABEL_BG_PATH_FORMAT = ":/NameCreater/resource/five/%1_%2.jpg";
|
||||||
|
|
||||||
|
static int LABEL_HIGHT_LIMIT = 350;
|
||||||
|
static QPoint LABEL_POS_START = QPoint(145, 55);
|
||||||
|
static int LABEL_POS_X_OFFSET = 323;
|
||||||
|
|
||||||
|
static QPoint NAME_OFFSET_START = QPoint(90, 335);
|
||||||
|
static QPoint NAME_OFFSET_REVERSE_START = QPoint(216, 1398);
|
||||||
|
static qreal NAME_TWO_WORD_OFFSET = 170;
|
||||||
|
static qreal NAME_THREE_WORD_OFFSET = 145;
|
||||||
|
|
||||||
|
static int MAX_LABEL_IN_PAPER = 10;
|
||||||
|
static int FONT_PIXEL_SIZE = 120;
|
||||||
|
|
||||||
|
|
||||||
|
NewFiveCreater::NewFiveCreater() : INameCreater()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
NewFiveCreater::~NewFiveCreater()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
QList<NameInfo_t> NewFiveCreater::getNameByFileContent(const QByteArray& conetent)
|
||||||
|
{
|
||||||
|
QList<NameInfo_t> nameList;
|
||||||
|
|
||||||
|
QTextCodec* tc = QTextCodec::codecForName("Big5");
|
||||||
|
QString codec = tc->toUnicode(conetent.data());
|
||||||
|
QTextStream stream(&codec);
|
||||||
|
|
||||||
|
int row = 0;
|
||||||
|
while (!stream.atEnd())
|
||||||
|
{
|
||||||
|
NameInfo_t info;
|
||||||
|
QString line = stream.readLine();
|
||||||
|
QString name_tc = line;
|
||||||
|
QStringList csvList = name_tc.split(',');
|
||||||
|
|
||||||
|
|
||||||
|
QString name = csvList.at(0); //QString::fromLocal8Bit(csvList.at(0));
|
||||||
|
QString bg_type = csvList.at(1);//QString::fromLocal8Bit(csvList.at(1));
|
||||||
|
|
||||||
|
qDebug() << "row :" << row << " " << name << ", bg_type: " << bg_type;
|
||||||
|
|
||||||
|
if (name.compare("name") == 0) {
|
||||||
|
//pass first line
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
info.name1 = name;
|
||||||
|
info.bg_path = bg_type;
|
||||||
|
|
||||||
|
nameList.append(info);
|
||||||
|
|
||||||
|
row++;
|
||||||
|
}
|
||||||
|
return nameList;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void NewFiveCreater::generaImageFromCSV(const QString& filename, const QByteArray& filecontent, const QFont& font, const QColor& font_color)
|
||||||
|
{
|
||||||
|
|
||||||
|
int export_times = 0;
|
||||||
|
|
||||||
|
QList<NameInfo_t> nameList = getNameByFileContent(filecontent);
|
||||||
|
if (nameList.isEmpty()) {
|
||||||
|
QMessageBox msgBox;
|
||||||
|
msgBox.setText(QString("Name is empty ! ").append(filename));
|
||||||
|
msgBox.exec();
|
||||||
|
}
|
||||||
|
|
||||||
|
QGraphicsScene scene;
|
||||||
|
scene.setBackgroundBrush(QBrush(QColor(255, 255, 255)));
|
||||||
|
QGraphicsView view(&scene);
|
||||||
|
|
||||||
|
|
||||||
|
int idx = 0;
|
||||||
|
foreach(auto name, nameList) {
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int l = 0; l < 5; l++) {
|
||||||
|
int col_index = idx % MAX_LABEL_IN_PAPER;
|
||||||
|
QString label_rel_path = LABEL_BG_PATH_FORMAT.arg(name.bg_path, QString::number(l + 1));
|
||||||
|
auto label_item = new QGraphicsPixmapItem(QPixmap(label_rel_path));
|
||||||
|
label_item->setPos(LABEL_POS_START.x() + LABEL_POS_X_OFFSET * col_index, LABEL_POS_START.y());
|
||||||
|
label_item->setOpacity(1);
|
||||||
|
scene.addItem(label_item);
|
||||||
|
|
||||||
|
for (int i = 0; i < 2; i++) {
|
||||||
|
int name_word_len = name.name1.count();
|
||||||
|
qreal two_word_y = (name_word_len == 2) ? NAME_TWO_WORD_OFFSET / 2.0 : 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.name1.at(w));
|
||||||
|
word_item->setFont(font);
|
||||||
|
word_item->setDefaultTextColor(font_color);
|
||||||
|
qreal _x = (i == 0) ? label_item->x() + NAME_OFFSET_START.x() : label_item->x() + NAME_OFFSET_REVERSE_START.x();
|
||||||
|
qreal _y = (i == 0) ? (label_item->y() + NAME_OFFSET_START.y() + two_word_y + offset_y * w) : (label_item->y() + NAME_OFFSET_REVERSE_START.y() - two_word_y - offset_y * w);
|
||||||
|
if (i == 1) word_item->setTransform(QTransform::fromScale(-1, -1));
|
||||||
|
word_item->setPos(_x, _y);
|
||||||
|
scene.addItem(word_item);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((idx % MAX_LABEL_IN_PAPER == MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() * 5 - 1) {
|
||||||
|
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||||
|
QString file_name = QString("Five_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||||
|
saveToImage(file_name, &scene);
|
||||||
|
export_times++;
|
||||||
|
scene.clear();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
idx++;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
QMessageBox msgBox;
|
||||||
|
msgBox.setText(QString().asprintf("Export Finshed. Count:%d", export_times));
|
||||||
|
msgBox.exec();
|
||||||
|
|
||||||
|
}
|
||||||
16
NameCreater/NewFiveCreater.h
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "INameCreater.h"
|
||||||
|
class NewFiveCreater :
|
||||||
|
public INameCreater
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
NewFiveCreater();
|
||||||
|
~NewFiveCreater();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
QList<NameInfo_t> getNameByFileContent(const QByteArray& conetent);
|
||||||
|
public:
|
||||||
|
virtual void generaImageFromCSV(const QString& filename, const QByteArray& filecontent, const QFont& font, const QColor& font_color);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
@ -3,6 +3,7 @@
|
|||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
#include <qDebug>
|
#include <qDebug>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QDateTime>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -144,7 +145,8 @@ void TowelCreater::generaImageFromCSV(const QString& filename, const QByteArray&
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((idx % MAX_LABEL_IN_PAPER == MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
if ((idx % MAX_LABEL_IN_PAPER == MAX_LABEL_IN_PAPER - 1) || idx == nameList.count() - 1) {
|
||||||
QString file_name = QString("%1_.jpg").arg(QString::number(export_times + 1));
|
QString date_str = QDateTime::currentDateTime().toString("MMddhhmm");
|
||||||
|
QString file_name = QString("Towel_%2_%1.jpg").arg(QString::number(export_times + 1), date_str);
|
||||||
saveToImage(file_name, &scene);
|
saveToImage(file_name, &scene);
|
||||||
export_times++;
|
export_times++;
|
||||||
|
|
||||||
|
|||||||
21
NameCreater/_exp/五入組範例.csv
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
name,bg_type
|
||||||
|
林禮諾,nb
|
||||||
|
陳宣愉,b
|
||||||
|
陳宣愉,g
|
||||||
|
陳宣愉,g
|
||||||
|
陳宣愉,nb
|
||||||
|
陳宣愉,nb
|
||||||
|
李能安,ng
|
||||||
|
陳宣愉,ng
|
||||||
|
陳宣愉,g
|
||||||
|
李能安,b
|
||||||
|
陳守志,nb
|
||||||
|
陳志,ng
|
||||||
|
陳守志,g
|
||||||
|
陳守志,g
|
||||||
|
陳志,b
|
||||||
|
吳佳鈴,b
|
||||||
|
吳佳鈴,ng
|
||||||
|
吳鈴,ng
|
||||||
|
吳鈴,nb
|
||||||
|
吳鈴,nb
|
||||||
|
BIN
NameCreater/resource/five/b_1.jpg
Normal file
|
After Width: | Height: | Size: 189 KiB |
BIN
NameCreater/resource/five/b_2.jpg
Normal file
|
After Width: | Height: | Size: 136 KiB |
BIN
NameCreater/resource/five/b_3.jpg
Normal file
|
After Width: | Height: | Size: 156 KiB |
BIN
NameCreater/resource/five/b_4.jpg
Normal file
|
After Width: | Height: | Size: 167 KiB |
BIN
NameCreater/resource/five/b_5.jpg
Normal file
|
After Width: | Height: | Size: 135 KiB |
BIN
NameCreater/resource/five/g_1.jpg
Normal file
|
After Width: | Height: | Size: 149 KiB |
BIN
NameCreater/resource/five/g_2.jpg
Normal file
|
After Width: | Height: | Size: 180 KiB |
BIN
NameCreater/resource/five/g_3.jpg
Normal file
|
After Width: | Height: | Size: 177 KiB |
BIN
NameCreater/resource/five/g_4.jpg
Normal file
|
After Width: | Height: | Size: 223 KiB |
BIN
NameCreater/resource/five/g_5.jpg
Normal file
|
After Width: | Height: | Size: 94 KiB |
BIN
NameCreater/resource/five/nb_1.jpg
Normal file
|
After Width: | Height: | Size: 107 KiB |
BIN
NameCreater/resource/five/nb_2.jpg
Normal file
|
After Width: | Height: | Size: 164 KiB |
BIN
NameCreater/resource/five/nb_3.jpg
Normal file
|
After Width: | Height: | Size: 119 KiB |
BIN
NameCreater/resource/five/nb_4.jpg
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
NameCreater/resource/five/nb_5.jpg
Normal file
|
After Width: | Height: | Size: 137 KiB |
BIN
NameCreater/resource/five/new_bg_sample.jpg
Normal file
|
After Width: | Height: | Size: 1.8 MiB |
BIN
NameCreater/resource/five/ng_1.jpg
Normal file
|
After Width: | Height: | Size: 134 KiB |
BIN
NameCreater/resource/five/ng_2.jpg
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
NameCreater/resource/five/ng_3.jpg
Normal file
|
After Width: | Height: | Size: 145 KiB |
BIN
NameCreater/resource/five/ng_4.jpg
Normal file
|
After Width: | Height: | Size: 135 KiB |
BIN
NameCreater/resource/five/ng_5.jpg
Normal file
|
After Width: | Height: | Size: 119 KiB |