From 6025cc291319f47a6cf3cfec4db65a63dd320f5f Mon Sep 17 00:00:00 2001 From: shouchih_chen Date: Sun, 20 Feb 2022 07:27:25 +0800 Subject: [PATCH] finish birthday namecreater --- NameCreater/_exp/name.csv | 15 +++++++++++++++ NameCreater/main.cpp | 36 +++++++++++++++++++++++------------- 2 files changed, 38 insertions(+), 13 deletions(-) diff --git a/NameCreater/_exp/name.csv b/NameCreater/_exp/name.csv index 13ec11a..4db8ff5 100644 --- a/NameCreater/_exp/name.csv +++ b/NameCreater/_exp/name.csv @@ -11,3 +11,18 @@ name_1,bg_type 甃和,g ︺诧,y 甃和,b +︺诧,b +甃和,b +衱郝,b +え丹,y +︺诧,b +甃和,g +衱郝,g +え丹,r +︺诧,r +甃和,r +︺诧,y +甃和,y +甃和,r +︺诧,g +甃和,b diff --git a/NameCreater/main.cpp b/NameCreater/main.cpp index fe3675f..98b2c93 100644 --- a/NameCreater/main.cpp +++ b/NameCreater/main.cpp @@ -178,7 +178,7 @@ int main(int argc, char* argv[]) msgBox.exec(); } - QGraphicsScene scene(0, 0, 3508, 2482); + QGraphicsScene scene; scene.setBackgroundBrush(QBrush(QColor(255, 255, 255))); QGraphicsView view(&scene); @@ -190,13 +190,20 @@ int main(int argc, char* argv[]) for (int n = 0; n < nameList.length(); n++) { - if (n >= BG_POS_COUNT)break; + int idx = n % BG_POS_COUNT; NameInfo_t name_info = nameList.at(n); QImage name_image(name_info.bg_path); + if (idx == 0) { + QGraphicsRectItem* bg_item = new QGraphicsRectItem(0, 0, 3508, 2482); + bg_item->setBrush(QBrush(QColor(255, 255, 255))); + scene.addItem(bg_item); + } + + QGraphicsPixmapItem* name_bgItem = new QGraphicsPixmapItem(QPixmap::fromImage(name_image)); - bool rot = (n == 10 || n == 11); + bool rot = (idx == 10 || idx == 11); name_bgItem->setRotation(rot ? -90 : 0); - name_bgItem->setPos(BG_POS[n]); + name_bgItem->setPos(BG_POS[idx]); scene.addItem(name_bgItem); @@ -207,7 +214,7 @@ int main(int argc, char* argv[]) } QString name = name_info.name1; for (int j = 0; j < 2; j++) { - int pos_idx = n * 2 + j; + int pos_idx = idx * 2 + j; int xscale, yscale; xscale = yscale = (j == 1) ? -1 : 1; @@ -264,20 +271,23 @@ int main(int argc, char* argv[]) scene.addItem(textItem3); } - + bool is_export_page = ((idx + 1) % BG_POS_COUNT == 0); + if (is_export_page || n == nameList.count()-1) { + QString file_name = QString("%1_.jpg").arg(QString::number(export_times + 1)); + saveToImage(file_name, &scene); + export_times++; + scene.clear(); + } + } - } - QString file_name = QString("%1_.jpg").arg(QString::number(export_times + 1)); - saveToImage(file_name, &scene); - export_times++; - /*QMessageBox msgBox; + QMessageBox msgBox; msgBox.setText(QString().asprintf("Export Finshed. Count:%d", export_times)); - msgBox.exec();*/ + msgBox.exec(); font_res.close(); - return a.exec(); + return 0; }