swortect 3 mesi fa
parent
commit
f1eda62d5d

+ 1001 - 0
python/custom_plugins/plugins/detail_template/hongqingting/detail_hongqingting2.py

@@ -0,0 +1,1001 @@
+"""
+步骤:
+1、整理需要处理的款号图-输出款号图文件夹
+2、整理所有相关的图片作为素材图
+3、按要求进行拼接
+"""
+import os
+from PIL import ImageFont
+import sys
+import settings
+
+# from module.view_control.generate_goods_no_detail_pic.detail_generate_base import DetailBase
+# from module.view_control.generate_goods_no_detail_pic.pic_deal import PictureProcessing
+is_test_plugins = False
+try:
+    is_test_plugins = settings.is_test_plugins
+except:
+    is_test_plugins = False
+
+if is_test_plugins:
+    from custom_plugins.plugins_mode.detail_generate_base import DetailBase
+    from custom_plugins.plugins_mode.pic_deal import PictureProcessing
+else:
+    from plugins_mode.detail_generate_base import DetailBase
+    from plugins_mode.pic_deal import PictureProcessing
+
+plugins_name = "详情模板"
+company_name_list = ["红蜻蜓",]
+template_name = "hongqingt-2"
+
+
+class DetailPicGet(DetailBase):
+    need_view = ["俯视", "侧视", "后跟", "鞋底", "内里", "组合"]
+    root = r"{}\resources\detail_temp\hongqingting\2".format(os.getcwd())
+
+    def __init__(self, goods_no, goods_no_value: dict, out_put_dir, windows=None, test=False, excel_data=None,
+                 assigned_page_list=None):
+
+        super().__init__(goods_no, goods_no_value, out_put_dir, windows=windows, excel_data=excel_data,
+                         assigned_page_list=assigned_page_list)
+        self.template_name = template_name
+        self.root = r"{}\resources\detail_temp\hongqingting\2".format(os.getcwd())
+        print("run hongqingt-2 ")
+        self.base_bg_color = (228, 196, 147)
+        bg_color = (246, 246, 246)
+        self.image_init(bg_color)
+
+        self.deal_pic_func_list = [
+            self.deal_pic_1,
+            self.deal_pic_2,
+            self.deal_pic_3,
+            # self.deal_pic_4,
+            # self.deal_pic_5,
+            self.deal_pic_6,
+            self.deal_pic_7,
+            self.deal_pic_8,
+            self.deal_pic_9,
+            self.deal_pic_10,
+            self.deal_pic_11,
+            self.deal_pic_12
+        ]
+        self.run_all()
+
+    def deal_pic_1(self):
+        detailed_images = []
+        pp_bg_1 = PictureProcessing(r"{}\1.jpg".format(self.root))
+        goods_art_no_list = list(self.data.keys())
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="后跟",
+                                                )
+        pp_jpg_1 = pp_jpg_1.resize(value=350)
+        pp_png_1 = pp_png_1.resize(value=350)
+        pp_bg_1 = pp_bg_1.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(-200, 400))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="俯视",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im):
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=800)
+        pp_png_1 = pp_png_1.resize(value=800)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=15,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=15,is_crop=False)
+        pp_bg_1 = pp_bg_1.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(120, -350))
+        detailed_images.append(pp_bg_1)
+        return PictureProcessing(im=self.add_pic(detailed_images))
+
+    def deal_pic_2(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\2.jpg".format(self.root))
+
+        font_cc = ImageFont.truetype(r"resources\ttf\simhei.ttf", 80)  # 颜色名
+        font_gg = ImageFont.truetype(r"resources\ttf\simhei.ttf", 50)  # 商品名
+        yanseming  = self.get_text_value("颜色名")
+        shangpinming = self.get_text_value("商品名")
+
+        bg_img.get_text_image_advanced(
+            value=(60, 310),
+            font=font_cc,
+            text="{"+yanseming+"}",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(141, 86, 32),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(450, 320),
+            font=font_gg,
+            text=shangpinming,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(141, 86, 32),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+        return bg_img
+    def deal_pic_3(self):
+
+        detailed_images = []
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\3.jpg".format(self.root))
+
+
+        font_gg = ImageFont.truetype(r"resources\ttf\simhei.ttf", 50)  # 商品名
+        yanseming  = self.get_text_value("颜色名")
+        shangpinming = self.get_text_value("商品名")
+
+        bg_img.get_text_image_advanced(
+            value=(488, 140),
+            font=font_gg,
+            text="{"+yanseming+shangpinming+"}",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(141, 86, 32),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="俯视",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im) == True:
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=650)
+        pp_png_1 = pp_png_1.resize(value=650)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=15,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=15,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(50, 1420))
+
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="俯视",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im) == False:
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=650)
+        pp_png_1 = pp_png_1.resize(value=650)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=-8,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=-8,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(-100, 950))
+
+
+        # pp_jpg_1, pp_png_1 = self.image_one_pic(
+        #     return_orign=True,
+        #     goods_art_no=goods_art_no_list[0],
+        #     name="俯视",
+        # )
+        # if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)==True:
+        #     pp_png_1 = pp_png_1.transpose()
+        #
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        #
+        # pp_png_1 = pp_png_1.resize(value=650)
+        #
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+        #
+        # pp_png_1 = aaa_img.rotate(15)
+        # bg_img = bg_img.to_overlay_pic_advance(
+        #     mode="pixel",
+        #     top_img=pp_png_1,
+        #     base="cs",
+        #     value=(50, 400),
+        #     top_png_img=pp_png_1,
+        # )
+        # if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)==False:
+        #     pp_png_1 = pp_png_1.transpose()
+        #
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        #
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+        #
+        # pp_png_1 = aaa_img.rotate(-8)
+        # bg_img = bg_img.to_overlay_pic_advance(
+        #     mode="pixel",
+        #     top_img=pp_png_1,
+        #     base="cs",
+        #     value=(-100, -140),
+        #     top_png_img=pp_png_1,
+        # )
+
+        detailed_images.append(bg_img)
+        return PictureProcessing(im=self.add_pic(detailed_images))
+        return bg_img
+
+    def deal_pic_4(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\4.jpg".format(self.root))
+        return bg_img
+
+    def deal_pic_5(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\5.jpg".format(self.root))
+        return bg_img
+    def deal_pic_6(self):
+        if self.get_text_value("模特图"):
+            hh_img = PictureProcessing(r"{}\6.jpg".format(self.root))
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=896)
+            bg_img = PictureProcessing("RGB", (hh_img.width, hh_img.height+mote_img.height+90), (252,238,225))
+            bg_img = bg_img.paste_img(top_img=hh_img,base="nc", value=(0, 0))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, hh_img.height))
+            return bg_img
+        else:
+            return
+
+    def deal_pic_7(self):
+        if self.get_text_value("场景图"):
+            hh_img = PictureProcessing(r"{}\7-1.jpg".format(self.root))
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=896)
+            ff_img = PictureProcessing(r"{}\7-2.jpg".format(self.root))
+            bg_img = PictureProcessing("RGB", (hh_img.width, hh_img.height+mote_img.height+ff_img.height), (252,238,225))
+            bg_img = bg_img.paste_img(top_img=hh_img,base="nc", value=(0, 0))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, hh_img.height))
+            bg_img = bg_img.paste_img(top_img=ff_img,base="nc", value=(0, hh_img.height+mote_img.height))
+            return bg_img
+        else:
+            return
+    def deal_pic_8(self):
+
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\8.jpg".format(self.root))
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+
+        aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+            pp_png_1 = pp_png_1.transpose()
+            pp_jpg_1 = pp_jpg_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=950)
+        pp_png_1 = pp_png_1.resize(value=950)
+
+        aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+
+        pp_png_1 = aaa_img.rotate(15)
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_png_1,
+            base="cs",
+            value=(-20, 40),
+            top_png_img=pp_png_1,
+        )
+
+        hover_img = PictureProcessing(r"{}\8-1.png".format(self.root))
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=hover_img,
+            base="nc",
+            value=(0, -1),
+            top_png_img=hover_img,
+        )
+        return bg_img
+
+    def deal_pic_9(self):
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\9.jpg".format(self.root))
+
+        length = len(goods_art_no_list)
+        if length==3:
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[2],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-60, 320),
+                top_png_img=pp_png_1,
+            )
+
+
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="俯视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 280),
+                top_png_img=pp_png_1,
+            )
+
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(60, 240),
+                top_png_img=pp_png_1,
+            )
+
+        elif length==2:
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-40, 300),
+                top_png_img=pp_png_1,
+            )
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(40, 260),
+                top_png_img=pp_png_1,
+            )
+
+        elif length==1:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 280),
+                top_png_img=pp_png_1,
+            )
+
+
+
+
+
+        return bg_img
+
+    def deal_pic_10(self):
+
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\10.jpg".format(self.root))
+
+
+        # 长宽示例
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+            pp_png_1 = pp_png_1.transpose()
+            pp_jpg_1 = pp_jpg_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=500)
+        pp_png_1 = pp_png_1.resize(value=500)
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(-40, 2300),
+            top_png_img=pp_png_1,
+        )
+
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)  # 设计理念
+        xiemian  = self.get_text_value("鞋面")
+        neili = self.get_text_value("内里")
+        xiedian = self.get_text_value("鞋垫")
+        xiedi = self.get_text_value("鞋底")
+
+        bg_img.get_text_image_advanced(
+            value=(226, 1326),
+            font=font_hei,
+            text=xiemian,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(722, 1326),
+            font=font_hei,
+            text=neili,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        bg_img.get_text_image_advanced(
+            value=(226, 1525),
+            font=font_hei,
+            text=xiedian,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        bg_img.get_text_image_advanced(
+            value=(722, 1525),
+            font=font_hei,
+            text=xiedi,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        itemNo = self.goods_no_value["货号资料"][0]["货号"]
+
+        bg_img.get_text_image_advanced(
+            value=(226, 1728),
+            font=font_hei,
+            text=itemNo,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+        xiekuan = self.get_text_value("鞋宽")
+        xiechang = self.get_text_value("鞋长")
+        tonggao = self.get_text_value("筒高")
+        gengao = self.get_text_value("跟高")
+        tongziwei = self.get_text_value("筒口围")
+
+        bg_img.get_text_image_advanced(
+            value=(270, 770),
+            font=font_hei,
+            text="鞋宽"+xiekuan,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(442, 1027),
+            font=font_hei,
+            text="鞋长"+xiechang,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(770, 734),
+            font=font_hei,
+            text="筒高"+tonggao,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(787, 875),
+            font=font_hei,
+            text="跟高"+gengao,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(545, 557),
+            font=font_hei,
+            text="筒口围"+tongziwei,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+        # 底部三连鞋子带文字
+
+        font_main = ImageFont.truetype(
+            r"resources\ttf\puhui\Medium.ttf", 30
+        )
+        length = len(goods_art_no_list)
+        if length==3:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-320, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(190, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][0]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(510, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][1]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[2],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(320, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(830, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][2]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+        elif length==2:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-320, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(190, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][0]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(320, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(830, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][1]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+        elif length==1:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="侧视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 1240),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(510, 2110),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][0]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+
+        return bg_img
+    def deal_pic_11(self):
+
+        goods_art_no_list = list(self.data.keys())
+
+
+
+        # 背景图
+        header_img = PictureProcessing(r"{}\11-1.jpg".format(self.root))
+
+
+        bg_img = PictureProcessing("RGBA", (header_img.width, 3440), (255,255,255))
+
+
+        # 贴顶部
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=header_img,
+            base="nc",
+            value=(0, 0),
+            top_png_img=header_img,
+        )
+
+        # item1
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+
+        if len(goods_art_no_list)==3:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[2],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            item_img = item_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-60, 300),
+                top_png_img=pp_png_1,
+            )
+        if len(goods_art_no_list)>=2:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="俯视",
+            )
+            if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+                pp_png_1 = pp_png_1.transpose()
+                pp_jpg_1 = pp_jpg_1.transpose()
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            item_img = item_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 260),
+                top_png_img=pp_png_1,
+            )
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+            pp_png_1 = pp_png_1.transpose()
+            pp_jpg_1 = pp_jpg_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=460)
+        pp_png_1 = pp_png_1.resize(value=460)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(60, 220),
+            top_png_img=pp_png_1,
+        )
+
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)
+        item_img.get_text_image_advanced(
+            value=(436, 600),
+            font=font_hei,
+            text="正面45°/FRONT45°",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(0, 0, 0),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 400),
+            top_png_img=item_img,
+        )
+
+        # item2
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="后跟",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=360)
+        pp_png_1 = pp_png_1.resize(value=360)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(60, 240),
+            top_png_img=pp_png_1,
+        )
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="后跟",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=360)
+        pp_png_1 = pp_png_1.resize(value=360)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(-60, 200),
+            top_png_img=pp_png_1,
+        )
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)
+        item_img.get_text_image_advanced(
+            value=(436, 600),
+            font=font_hei,
+            text="背面45°/BACK45°",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(0, 0, 0),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 400+760),
+            top_png_img=item_img,
+        )
+
+        # item3
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="侧视",
+        )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== True:
+            pp_png_1 = pp_png_1.transpose()
+            pp_jpg_1 = pp_jpg_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=530)
+        pp_png_1 = pp_png_1.resize(value=530)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(0, 220),
+            top_png_img=pp_png_1,
+        )
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)
+        item_img.get_text_image_advanced(
+            value=(500, 600),
+            font=font_hei,
+            text="侧面/SIDE",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(0, 0, 0),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 400+760*2),
+            top_png_img=item_img,
+        )
+
+
+        # item4
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="组合",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=530)
+        pp_png_1 = pp_png_1.resize(value=530)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(0, 220),
+            top_png_img=pp_png_1,
+        )
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)
+        item_img.get_text_image_advanced(
+            value=(500, 600),
+            font=font_hei,
+            text="顶面/TOP",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(0, 0, 0),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 400+760*3),
+            top_png_img=item_img,
+        )
+
+
+        return bg_img
+
+    def deal_pic_12(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\12.jpg".format(self.root))
+        return bg_img

+ 879 - 0
python/custom_plugins/plugins/detail_template/hongqingting/detail_hongqingting3.py

@@ -0,0 +1,879 @@
+"""
+步骤:
+1、整理需要处理的款号图-输出款号图文件夹
+2、整理所有相关的图片作为素材图
+3、按要求进行拼接
+"""
+import os
+from PIL import ImageFont
+import sys
+import settings
+
+# from module.view_control.generate_goods_no_detail_pic.detail_generate_base import DetailBase
+# from module.view_control.generate_goods_no_detail_pic.pic_deal import PictureProcessing
+is_test_plugins = False
+try:
+    is_test_plugins = settings.is_test_plugins
+except:
+    is_test_plugins = False
+
+if is_test_plugins:
+    from custom_plugins.plugins_mode.detail_generate_base import DetailBase
+    from custom_plugins.plugins_mode.pic_deal import PictureProcessing
+else:
+    from plugins_mode.detail_generate_base import DetailBase
+    from plugins_mode.pic_deal import PictureProcessing
+
+plugins_name = "详情模板"
+company_name_list = ["红蜻蜓",]
+template_name = "hongqingt-3"
+
+
+class DetailPicGet(DetailBase):
+    need_view = ["俯视", "侧视", "后跟", "鞋底", "内里", "组合"]
+    root = r"{}\resources\detail_temp\hongqingting\3".format(os.getcwd())
+
+    def __init__(self, goods_no, goods_no_value: dict, out_put_dir, windows=None, test=False, excel_data=None,
+                 assigned_page_list=None):
+
+        super().__init__(goods_no, goods_no_value, out_put_dir, windows=windows, excel_data=excel_data,
+                         assigned_page_list=assigned_page_list)
+        self.template_name = template_name
+        self.root = r"{}\resources\detail_temp\hongqingting\3".format(os.getcwd())
+        print("run hongqingt-3 ")
+        self.base_bg_color = (228, 196, 147)
+        bg_color = (246, 246, 246)
+        self.image_init(bg_color)
+
+        self.deal_pic_func_list = [
+            self.deal_pic_1,
+            self.deal_pic_2,
+            # self.deal_pic_3,
+            self.deal_pic_4,
+            self.deal_pic_5,
+            self.deal_pic_6,
+            self.deal_pic_7,
+            # self.deal_pic_8,
+            # self.deal_pic_9,
+            self.deal_pic_10,
+            self.deal_pic_11,
+            self.deal_pic_12
+        ]
+        self.run_all()
+
+    def deal_pic_1(self):
+
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\1.jpg".format(self.root))
+
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 40)
+
+        year  = self.get_text_value("出品年")
+        bg_img.get_text_image_advanced(
+            value=(620, 499),
+            font=font_hei,
+            text=year,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(255, 255, 255),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        mtitle  = self.get_text_value("主标题")
+        bg_img.get_text_image_advanced(
+            value=(510, 567),
+            font=font_hei,
+            text=mtitle,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(255, 255, 255),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        stitle  = self.get_text_value("副标题")
+        bg_img.get_text_image_advanced(
+            value=(300, 650),
+            font=font_hei,
+            text=stitle,
+            align="left",
+            # anchor="ma",
+            spacing=15,
+            fill=(255, 255, 255),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im):
+            pp_png_1 = pp_png_1.transpose()
+            pp_jpg_1 = pp_jpg_1.transpose()
+
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        #
+        pp_png_1 = pp_png_1.resize(value=850)
+        pp_jpg_1 = pp_jpg_1.resize(value=850)
+        #
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+
+        # pp_png_1 = aaa_img.rotate(0)
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(-200, 350),
+            top_png_img=pp_png_1,
+        )
+
+        pp_jpg_2, pp_png_2 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_2.im)== False:
+            pp_png_2 = pp_png_2.transpose()
+            pp_jpg_2 = pp_jpg_2.transpose()
+        pp_png_2 = pp_png_2.resize(value=850)
+        pp_jpg_2 = pp_jpg_2.resize(value=850)
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_2.width*1.2, pp_jpg_2.height*1.2), (255,255,255,0))
+        #
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_2,base="cc", value=(0, 0))
+        #
+        # pp_png_2 = aaa_img.rotate(0)
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_2,
+            base="cs",
+            value=(200, 900),
+            top_png_img=pp_png_2,
+        )
+        return bg_img
+
+    def deal_pic_2(self):
+
+        detailed_images = []
+
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\2.jpg".format(self.root))
+
+
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 45)
+
+        year  = self.get_text_value("系列名")
+        bg_img.get_text_image_advanced(
+            value=(740, 520),
+            font=font_hei,
+            text=year,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(75, 69, 107),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="俯视",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im) == False:
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=850)
+        pp_png_1 = pp_png_1.resize(value=850)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=-35,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=-35,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(0, 100))
+
+        # pp_jpg_1, pp_png_1 = self.image_one_pic(
+        #     return_orign=True,
+        #     goods_art_no=goods_art_no_list[0],
+        #     name="俯视",
+        # )
+        # if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)==False:
+        #     pp_png_1 = pp_png_1.transpose()
+        #     pp_jpg_1 = pp_jpg_1.transpose()
+        #
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        #
+        # pp_png_1 = pp_png_1.resize(value=850)
+        # pp_jpg_1 = pp_jpg_1.resize(value=850)
+        #
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+        #
+        # pp_png_1 = aaa_img.rotate(-35)
+        #
+        # bg_img = bg_img.to_overlay_pic_advance(
+        #     mode="pixel",
+        #     top_img=pp_png_1,
+        #     base="cs",
+        #     value=(0, -100),
+        #     top_png_img=pp_png_1,
+        # )
+
+        detailed_images.append(bg_img)
+        return PictureProcessing(im=self.add_pic(detailed_images))
+
+        # return bg_img
+    def deal_pic_3(self):
+
+        # 背景图
+        bg_img = PictureProcessing(r"{}\3.jpg".format(self.root))
+
+        # sign_img = PictureProcessing(r"{}\3.png".format(self.root))
+        # bg_img = bg_img.paste_img(top_img=sign_img,base="cc", value=(0, 0))
+
+        return bg_img
+
+    def deal_pic_4(self):
+        detailed_images = []
+
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\4.jpg".format(self.root))
+
+
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="后跟",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im) == False:
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=850)
+        pp_png_1 = pp_png_1.resize(value=850)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=25,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=25,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(-250, -120))
+
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="俯视",
+                                                )
+        if self.check_shoe_is_right_by_pixel(im=pp_png_1.im) == True:
+            pp_jpg_1 = pp_jpg_1.transpose()
+            pp_png_1 = pp_png_1.transpose()
+        pp_jpg_1 = pp_jpg_1.resize(value=800)
+        pp_png_1 = pp_png_1.resize(value=800)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=30,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=30,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(220, -250))
+
+        # pp_jpg_1, pp_png_1 = self.image_one_pic(
+        #     return_orign=True,
+        #     goods_art_no=goods_art_no_list[0],
+        #     name="后跟",
+        # )
+        # if self.check_shoe_is_right_by_pixel(im=pp_png_1.im)== False:
+        #     pp_png_1 = pp_png_1.transpose()
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_1.width*1.2, pp_jpg_1.height*1.2), (255,255,255,0))
+        # pp_png_1 = pp_png_1.resize(value=850)
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_1,base="cc", value=(0, 0))
+        # pp_png_1 = aaa_img.rotate(15)
+        # bg_img = bg_img.to_overlay_pic_advance(
+        #     mode="pixel",
+        #     top_img=pp_png_1,
+        #     base="cs",
+        #     value=(-250, 300),
+        #     top_png_img=pp_png_1,
+        # )
+        # pp_jpg_2, pp_png_2 = self.image_one_pic(
+        #     return_orign=True,
+        #     goods_art_no=goods_art_no_list[0],
+        #     name="俯视",
+        # )
+        # if self.check_shoe_is_right_by_pixel(im=pp_png_2.im):
+        #     pp_png_2 = pp_png_2.transpose()
+        # pp_png_2 = pp_png_2.resize(value=800)
+        # aaa_img = PictureProcessing("RGBA", (pp_jpg_2.width*1.2, pp_jpg_2.height*1.2), (255,255,255,0))
+        # aaa_img = aaa_img.paste_img(top_img=pp_png_2,base="cc", value=(0, 0))
+        # pp_png_2 = aaa_img.rotate(15)
+        # bg_img = bg_img.to_overlay_pic_advance(
+        #     mode="pixel",
+        #     top_img=pp_png_2,
+        #     base="cs",
+        #     value=(220, -450),
+        #     top_png_img=pp_png_2,
+        # )
+
+        detailed_images.append(bg_img)
+        return PictureProcessing(im=self.add_pic(detailed_images))
+        return bg_img
+
+    def deal_pic_5(self):
+        detailed_images = []
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\5.jpg".format(self.root))
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(return_orign=True,
+                                                goods_art_no=goods_art_no_list[0],
+                                                name="侧视",
+                                                )
+        pp_jpg_1 = pp_jpg_1.resize(value=850)
+        pp_png_1 = pp_png_1.resize(value=850)
+        pp_jpg_1=pp_jpg_1.rotate_advance(doge=22,is_crop=False)
+        pp_png_1=pp_png_1.rotate_advance(doge=22,is_crop=False)
+        bg_img = bg_img.to_overlay_pic_advance(top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs",value=(-50, -230))
+
+
+        detailed_images.append(bg_img)
+        return PictureProcessing(im=self.add_pic(detailed_images))
+
+
+
+    def deal_pic_6(self):
+        if self.get_text_value("模特图"):
+            hh_img = PictureProcessing(r"{}\6.jpg".format(self.root))
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1400)
+            bg_img = PictureProcessing("RGB", (hh_img.width, hh_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=hh_img,base="nc", value=(0, 0))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, hh_img.height))
+            return bg_img
+        else:
+            return
+
+    def deal_pic_7(self):
+        if self.get_text_value("场景图"):
+            hh_img = PictureProcessing(r"{}\7.jpg".format(self.root))
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1400)
+            bg_img = PictureProcessing("RGB", (hh_img.width, hh_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=hh_img,base="nc", value=(0, 0))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, hh_img.height))
+            return bg_img
+        else:
+            return
+
+    def deal_pic_8(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\8.jpg".format(self.root))
+
+        return bg_img
+
+    def deal_pic_9(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\9.jpg".format(self.root))
+        return bg_img
+
+    def deal_pic_10(self):
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        bg_img = PictureProcessing(r"{}\10.jpg".format(self.root))
+        # 长宽示例
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=660)
+        pp_png_1 = pp_png_1.resize(value=660)
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(-40, 1640),
+            top_png_img=pp_png_1,
+        )
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 24)  # 设计理念
+        xiemian  = self.get_text_value("鞋面")
+        neili = self.get_text_value("内里")
+        xiedian = self.get_text_value("鞋垫")
+        xiedi = self.get_text_value("鞋底")
+        bg_img.get_text_image_advanced(
+            value=(302, 1648),
+            font=font_hei,
+            text=xiemian,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(944, 1648),
+            font=font_hei,
+            text=neili,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(302, 1900),
+            font=font_hei,
+            text=xiedian,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(944, 1900),
+            font=font_hei,
+            text=xiedi,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        itemNo = self.goods_no_value["货号资料"][0]["货号"]
+        bg_img.get_text_image_advanced(
+            value=(302, 2172),
+            font=font_hei,
+            text=itemNo,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        xiekuan = self.get_text_value("鞋宽")
+        xiechang = self.get_text_value("鞋长")
+        gengao = self.get_text_value("跟高")
+        bg_img.get_text_image_advanced(
+            value=(223, 894),
+            font=font_hei,
+            text="鞋宽"+xiekuan,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(585, 1269),
+            font=font_hei,
+            text="鞋长"+xiechang,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img.get_text_image_advanced(
+            value=(1089, 1014),
+            font=font_hei,
+            text="跟高"+gengao,
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(74, 74, 74),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+
+        # 底部三连鞋子带文字
+
+        font_main = ImageFont.truetype(
+            r"resources\ttf\puhui\Medium.ttf", 30
+        )
+
+        length=len(goods_art_no_list)
+        if length==3:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-320, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(345, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][0]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(655, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][1]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[2],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(320, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(990, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][2]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+        elif length==2:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[0],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-320, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(345, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][0]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+
+
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(320, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(990, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][1]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+        elif length==1:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="侧视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=250)
+            pp_png_1 = pp_png_1.resize(value=250)
+            bg_img = bg_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 366),
+                top_png_img=pp_png_1,
+            )
+
+            bg_img.get_text_image_advanced(
+                value=(655, 2520),
+                font=font_main,
+                text=self.goods_no_value["货号资料"][1]["颜色名称"],
+                align="center",
+                # anchor="ma",
+                spacing=5,
+                fill=(0, 0, 0),
+                return_mode="image",
+                margins=(0, 0, 0, 0),
+            )
+
+
+        return bg_img
+    def deal_pic_11(self):
+        goods_art_no_list = list(self.data.keys())
+        # 背景图
+        header_img = PictureProcessing(r"{}\11-1.jpg".format(self.root))
+        bg_img = PictureProcessing("RGBA", (header_img.width, 3575), (255,255,255))
+        # 贴顶部
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=header_img,
+            base="nc",
+            value=(0, 0),
+            top_png_img=header_img,
+        )
+
+        # item1
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+
+
+        length=len(goods_art_no_list)
+        if length==3:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[2],
+                name="俯视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            item_img = item_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(-60, 300),
+                top_png_img=pp_png_1,
+            )
+        if length>=2:
+            pp_jpg_1, pp_png_1 = self.image_one_pic(
+                return_orign=True,
+                goods_art_no=goods_art_no_list[1],
+                name="俯视",
+            )
+            pp_jpg_1 = pp_jpg_1.resize(value=460)
+            pp_png_1 = pp_png_1.resize(value=460)
+            item_img = item_img.to_overlay_pic_advance(
+                mode="pixel",
+                top_img=pp_jpg_1,
+                base="cs",
+                value=(0, 260),
+                top_png_img=pp_png_1,
+            )
+
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="俯视",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=460)
+        pp_png_1 = pp_png_1.resize(value=460)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(60, 220),
+            top_png_img=pp_png_1,
+        )
+
+        font_hei = ImageFont.truetype(r"resources\ttf\simhei.ttf", 40)
+        item_img.get_text_image_advanced(
+            value=(520, 600),
+            font=font_hei,
+            text="正面45°/FRONT45°",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(0, 0, 0),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 534),
+            top_png_img=item_img,
+        )
+
+        # item2
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="后跟",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=460)
+        pp_png_1 = pp_png_1.resize(value=460)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(60, 260),
+            top_png_img=pp_png_1,
+        )
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="后跟",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=460)
+        pp_png_1 = pp_png_1.resize(value=460)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(-60, 220),
+            top_png_img=pp_png_1,
+        )
+
+        item_img.get_text_image_advanced(
+            value=(520, 600),
+            font=font_hei,
+            text="背面45°/BACK45°",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(50, 50, 50),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 534+760),
+            top_png_img=item_img,
+        )
+
+        # item3
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="侧视",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=530)
+        pp_png_1 = pp_png_1.resize(value=530)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(0, 220),
+            top_png_img=pp_png_1,
+        )
+        item_img.get_text_image_advanced(
+            value=(600, 600),
+            font=font_hei,
+            text="侧面/SIDE",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(50, 50, 50),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 534+760*2),
+            top_png_img=item_img,
+        )
+
+
+        # item4
+        item_img = PictureProcessing("RGBA", (header_img.width, 760), (255,255,255))
+        pp_jpg_1, pp_png_1 = self.image_one_pic(
+            return_orign=True,
+            goods_art_no=goods_art_no_list[0],
+            name="组合",
+        )
+        pp_jpg_1 = pp_jpg_1.resize(value=530)
+        pp_png_1 = pp_png_1.resize(value=530)
+        item_img = item_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=pp_jpg_1,
+            base="cs",
+            value=(0, 220),
+            top_png_img=pp_png_1,
+        )
+
+        item_img.get_text_image_advanced(
+            value=(600, 600),
+            font=font_hei,
+            text="顶面/TOP",
+            align="left",
+            # anchor="ma",
+            spacing=5,
+            fill=(50, 50, 50),
+            return_mode="image",
+            margins=(0, 0, 0, 0),
+        )
+        bg_img = bg_img.to_overlay_pic_advance(
+            mode="pixel",
+            top_img=item_img,
+            base="nc",
+            value=(0, 534+760*3),
+            top_png_img=item_img,
+        )
+
+
+        return bg_img
+
+    def deal_pic_12(self):
+        # 背景图
+        bg_img = PictureProcessing(r"{}\12.jpg".format(self.root))
+        return bg_img

+ 25 - 0
python/custom_plugins/plugins/detail_template/huilima/detail_huilima1.py

@@ -51,6 +51,8 @@ class DetailPicGet(DetailBase):
         self.base_bg_color = (228, 196, 147)
         self.base_bg_color = (228, 196, 147)
         self.deal_pic_func_list = [
         self.deal_pic_func_list = [
             self.deal_pic_1,
             self.deal_pic_1,
+            self.deal_pic_1_2,
+            self.deal_pic_1_3,
             self.deal_pic_2,
             self.deal_pic_2,
             self.deal_pic_3,
             self.deal_pic_3,
             self.deal_pic_4,
             self.deal_pic_4,
@@ -129,6 +131,29 @@ class DetailPicGet(DetailBase):
         detailed_images.append(bg_img)
         detailed_images.append(bg_img)
         return PictureProcessing(im=self.add_pic(detailed_images))
         return PictureProcessing(im=self.add_pic(detailed_images))
 
 
+    #模特图
+    def deal_pic_1_2(self):
+        if self.get_text_value("模特图"):
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1200)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+    #场景图
+    def deal_pic_1_3(self):
+        if self.get_text_value("场景图"):
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1200)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+
+
+
     def deal_pic_2(self):
     def deal_pic_2(self):
         # 尺码表
         # 尺码表
         pp_1 = PictureProcessing(r"{}\image (2).jpg".format(self.root))
         pp_1 = PictureProcessing(r"{}\image (2).jpg".format(self.root))

+ 25 - 0
python/custom_plugins/plugins/detail_template/huilima/detail_huilima2.py

@@ -48,6 +48,8 @@ class DetailPicGet(DetailBase):
             self.deal_pic_1,
             self.deal_pic_1,
             self.deal_pic_2,
             self.deal_pic_2,
             self.deal_pic_3,
             self.deal_pic_3,
+            self.deal_pic_3_2,
+            self.deal_pic_3_3,
             self.deal_pic_4,
             self.deal_pic_4,
             self.deal_pic_5,
             self.deal_pic_5,
             self.deal_pic_6,
             self.deal_pic_6,
@@ -162,6 +164,29 @@ class DetailPicGet(DetailBase):
 
 
         return PictureProcessing(im=self.add_pic(detailed_images))
         return PictureProcessing(im=self.add_pic(detailed_images))
 
 
+
+    #模特图
+    def deal_pic_3_2(self):
+        if self.get_text_value("模特图"):
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+    #场景图
+    def deal_pic_3_3(self):
+        if self.get_text_value("场景图"):
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+
+
     # 展示产品信息和颜色图
     # 展示产品信息和颜色图
     def deal_pic_4(self):
     def deal_pic_4(self):
         detailed_images = []
         detailed_images = []

+ 26 - 0
python/custom_plugins/plugins/detail_template/huilima/detail_huilima3.py

@@ -48,6 +48,8 @@ class DetailPicGet(DetailBase):
         self.deal_pic_func_list = [
         self.deal_pic_func_list = [
             self.deal_pic_1,
             self.deal_pic_1,
             self.deal_pic_2,
             self.deal_pic_2,
+            self.deal_pic_22,
+            self.deal_pic_23,
             self.deal_pic_3,
             self.deal_pic_3,
             self.deal_pic_4,
             self.deal_pic_4,
             self.deal_pic_5,
             self.deal_pic_5,
@@ -195,6 +197,30 @@ class DetailPicGet(DetailBase):
         detailed_images.append(pp_bg_2)
         detailed_images.append(pp_bg_2)
         return PictureProcessing(im=self.add_pic(detailed_images))
         return PictureProcessing(im=self.add_pic(detailed_images))
 
 
+
+    #模特图
+    def deal_pic_2_2(self):
+        if self.get_text_value("模特图"):
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+    #场景图
+    def deal_pic_2_3(self):
+        if self.get_text_value("场景图"):
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+
+
+
     # 细节展示
     # 细节展示
     def deal_pic_3(self):
     def deal_pic_3(self):
         detailed_images = []
         detailed_images = []

+ 25 - 0
python/custom_plugins/plugins/detail_template/huilima/detail_huilima4.py

@@ -49,6 +49,8 @@ class DetailPicGet(DetailBase):
             self.deal_pic_1,
             self.deal_pic_1,
             self.deal_pic_2,
             self.deal_pic_2,
             self.deal_pic_3,
             self.deal_pic_3,
+            self.deal_pic_3_2,
+            self.deal_pic_3_3,
             self.deal_pic_4,
             self.deal_pic_4,
             self.deal_pic_5,
             self.deal_pic_5,
             self.deal_pic_6,
             self.deal_pic_6,
@@ -190,6 +192,29 @@ class DetailPicGet(DetailBase):
         detailed_images.append(all_color_pp)
         detailed_images.append(all_color_pp)
         return PictureProcessing(im=self.add_pic(detailed_images))
         return PictureProcessing(im=self.add_pic(detailed_images))
 
 
+
+    #模特图
+    def deal_pic_3_2(self):
+        if self.get_text_value("模特图"):
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+    #场景图
+    def deal_pic_3_3(self):
+        if self.get_text_value("场景图"):
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+
+
     # 展示细节图
     # 展示细节图
     def deal_pic_4(self):
     def deal_pic_4(self):
         detailed_images = []
         detailed_images = []

+ 25 - 0
python/custom_plugins/plugins/detail_template/huilima/detail_huilima5.py

@@ -71,6 +71,8 @@ class DetailPicGet(DetailBase):
             self.deal_pic_4,
             self.deal_pic_4,
             self.deal_pic_5,
             self.deal_pic_5,
             self.deal_pic_6,
             self.deal_pic_6,
+            self.deal_pic_6_2,
+            self.deal_pic_6_3,
             self.deal_pic_7,
             self.deal_pic_7,
             self.deal_pic_8,
             self.deal_pic_8,
         ]
         ]
@@ -379,6 +381,29 @@ class DetailPicGet(DetailBase):
 
 
         return PictureProcessing(im=self.add_pic(detailed_images))
         return PictureProcessing(im=self.add_pic(detailed_images))
 
 
+
+    #模特图
+    def deal_pic_6_2(self):
+        if self.get_text_value("模特图"):
+            mote_img = PictureProcessing(self.get_text_value("模特图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img 
+        else:
+            return
+    #场景图
+    def deal_pic_6_3(self):
+        if self.get_text_value("场景图"):
+            mote_img = PictureProcessing(self.get_text_value("场景图"))
+            mote_img = mote_img.resize(value=1600)
+            bg_img = PictureProcessing("RGB", (mote_img.width, mote_img.height+mote_img.height), (255,255,255))
+            bg_img = bg_img.paste_img(top_img=mote_img,base="nc", value=(0, 0))
+            return bg_img
+        else:
+            return
+
+
     # 场景图--产品展示
     # 场景图--产品展示
     def deal_pic_7(self):
     def deal_pic_7(self):
         detailed_images = []
         detailed_images = []