|
|
@@ -33,7 +33,7 @@ template_name = "xinnuo-1"
|
|
|
|
|
|
class DetailPicGet(DetailBase):
|
|
|
need_view = ["俯视", "侧视", "后跟", "鞋底", "内里","组合","组合2","组合3"]
|
|
|
- root = r"{}\resources\detail_temp\xinnuo\1".format(os.getcwd())
|
|
|
+ root = r"{}\resources\detail_temp\xinnuo\2".format(os.getcwd())
|
|
|
|
|
|
def __init__(
|
|
|
self,
|
|
|
@@ -55,7 +55,7 @@ class DetailPicGet(DetailBase):
|
|
|
)
|
|
|
self.template_name = template_name
|
|
|
|
|
|
- self.root = r"{}\resources\detail_temp\xinnuo\1".format(os.getcwd())
|
|
|
+ self.root = r"{}\resources\detail_temp\xinnuo\2".format(os.getcwd())
|
|
|
print("run xinnuo-1 ")
|
|
|
self.base_bg_color = (255, 255, 255)
|
|
|
self.base_bg_color_2 = (244, 242, 243)
|
|
|
@@ -72,13 +72,11 @@ class DetailPicGet(DetailBase):
|
|
|
self.deal_pic_10,
|
|
|
self.deal_pic_11,
|
|
|
self.deal_pic_13,
|
|
|
- self.deal_pic_14,
|
|
|
- self.deal_pic_15,
|
|
|
- self.deal_pic_16,
|
|
|
self.deal_pic_17,
|
|
|
self.deal_pic_18,
|
|
|
self.deal_pic_19,
|
|
|
self.deal_pic_20,
|
|
|
+ self.deal_pic_21,
|
|
|
]
|
|
|
|
|
|
if test:
|
|
|
@@ -104,26 +102,24 @@ class DetailPicGet(DetailBase):
|
|
|
detailed_images.append(self.deal_pic_10())
|
|
|
detailed_images.append(self.deal_pic_11())
|
|
|
detailed_images.append(self.deal_pic_13())
|
|
|
- detailed_images.append(self.deal_pic_14())
|
|
|
- detailed_images.append(self.deal_pic_15())
|
|
|
- detailed_images.append(self.deal_pic_16())
|
|
|
detailed_images.append(self.deal_pic_17())
|
|
|
detailed_images.append(self.deal_pic_18())
|
|
|
detailed_images.append(self.deal_pic_19())
|
|
|
detailed_images.append(self.deal_pic_20())
|
|
|
+ detailed_images.append(self.deal_pic_21())
|
|
|
|
|
|
img = self.add_pic(detailed_images)
|
|
|
img.save(r"{}/{}.jpg".format(self.out_put_dir, self.goods_no, format="JPEG"))
|
|
|
- # img.show()
|
|
|
+ img.show()
|
|
|
|
|
|
# 标题文字展示
|
|
|
def deal_pic_1(self):
|
|
|
- pp_bg = PictureProcessing(r"{}\1.jpg".format(self.root))
|
|
|
+ pp_bg = PictureProcessing(r"{}\1.jpg".format(self.root),1600)
|
|
|
font_main = ImageFont.truetype(r"resources\ttf\puhui\Medium.ttf", 102) # 设计理念
|
|
|
mainTitle = self.get_text_value("主标题")
|
|
|
subTitle = self.get_text_value("副标题")
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(336, 102),
|
|
|
+ value=(336, 95),
|
|
|
font=font_main,
|
|
|
text=mainTitle,
|
|
|
align="left",
|
|
|
@@ -137,7 +133,7 @@ class DetailPicGet(DetailBase):
|
|
|
r"resources\ttf\puhui\Bold.ttf", 40
|
|
|
) # 设计理念
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(82, 102),
|
|
|
+ value=(82, 95),
|
|
|
font=font_sub,
|
|
|
text=subTitle,
|
|
|
align="left",
|
|
|
@@ -147,31 +143,65 @@ class DetailPicGet(DetailBase):
|
|
|
return_mode="image",
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
+ 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="俯视",
|
|
|
+ )
|
|
|
+ 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=pp_bg.width/1.1)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=pp_bg.width / 1.1)
|
|
|
+ pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs", value=(-50, 190)
|
|
|
+ )
|
|
|
+ pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs", value=(50, 130)
|
|
|
+ )
|
|
|
return pp_bg
|
|
|
|
|
|
# 展示鞋头和后跟
|
|
|
def deal_pic_2(self):
|
|
|
- pp_bg = PictureProcessing(r"{}\2.jpg".format(self.root))
|
|
|
+ pp_bg = PictureProcessing(r"{}\2.jpg".format(self.root), 1600)
|
|
|
font = ImageFont.truetype(
|
|
|
r"resources\ttf\puhui\Regular.ttf", 24
|
|
|
) # 设计理念
|
|
|
design_text = self.get_text_value("设计理念")
|
|
|
- pp_bg.get_text_image_advanced(
|
|
|
- value=(226, 359),
|
|
|
+ text_bg = PictureProcessing("RGBA", (pp_bg.width, 200), (255,255,255,0))
|
|
|
+ text_bg = text_bg.get_text_image_advanced(
|
|
|
+ value=(0, 0),
|
|
|
font=font,
|
|
|
text=design_text,
|
|
|
align="center",
|
|
|
- # anchor="ma",
|
|
|
spacing=20,
|
|
|
fill=(88, 52, 28),
|
|
|
- return_mode="image",
|
|
|
- margins=(0, 0, 0, 0),
|
|
|
+ return_mode="min_image",
|
|
|
+ )
|
|
|
+ pp_bg = pp_bg.paste_img(top_img=text_bg, base="nc", value=(0, 359))
|
|
|
+ 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="组合",
|
|
|
+ )
|
|
|
+ if pp_jpg_1 == None:
|
|
|
+ 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=pp_bg.width)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=pp_bg.width)
|
|
|
+ pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cs", value=(0, 315)
|
|
|
)
|
|
|
return pp_bg
|
|
|
|
|
|
# 展示鞋头放大图
|
|
|
def deal_pic_3(self):
|
|
|
- pp_bg = PictureProcessing(r"{}\3.jpg".format(self.root))
|
|
|
+ pp_bg = PictureProcessing(r"{}\3.jpg".format(self.root),1600)
|
|
|
goods_art_no_list = list(self.data.keys())
|
|
|
pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
return_orign=True,
|
|
|
@@ -184,8 +214,8 @@ class DetailPicGet(DetailBase):
|
|
|
pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
mode="pixel",
|
|
|
top_img=pp_jpg_1,
|
|
|
- base="es",
|
|
|
- value=(80, 230),
|
|
|
+ base="sw",
|
|
|
+ value=(-pp_bg.width - 100, 280),
|
|
|
top_png_img=pp_png_1,
|
|
|
)
|
|
|
return pp_bg
|
|
|
@@ -205,11 +235,19 @@ class DetailPicGet(DetailBase):
|
|
|
def deal_pic_6(self):
|
|
|
pp_bg = PictureProcessing(r"{}\6.jpg".format(self.root))
|
|
|
goods_art_no_list = list(self.data.keys())
|
|
|
+ goods_art = goods_art_no_list[0]
|
|
|
pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
return_orign=True,
|
|
|
- goods_art_no=goods_art_no_list[0],
|
|
|
- name="俯视",
|
|
|
+ goods_art_no=goods_art,
|
|
|
+ name="组合2",
|
|
|
)
|
|
|
+ if pp_jpg_1 == None:
|
|
|
+ pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
+ return_orign=True,
|
|
|
+ goods_art_no=goods_art,
|
|
|
+ name="俯视",
|
|
|
+ )
|
|
|
+
|
|
|
pp_jpg_1 = pp_jpg_1.resize(value=pp_bg.width/1.4)
|
|
|
pp_png_1 = pp_png_1.resize(value=pp_bg.width / 1.4)
|
|
|
# pp_bg = pp_bg.paste_img(top_img=shoe_bg, value=(0, 0), base="nw")
|
|
|
@@ -237,8 +275,8 @@ class DetailPicGet(DetailBase):
|
|
|
pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
mode="pixel",
|
|
|
top_img=pp_jpg_1,
|
|
|
- base="es",
|
|
|
- value=(200, 208),
|
|
|
+ base="sw",
|
|
|
+ value=(123, 237),
|
|
|
top_png_img=pp_png_1,
|
|
|
)
|
|
|
font = ImageFont.truetype(
|
|
|
@@ -253,7 +291,7 @@ class DetailPicGet(DetailBase):
|
|
|
banggao = self.get_text_value("帮高")
|
|
|
gengao = self.get_text_value("跟高")
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(230, 346),
|
|
|
+ value=(230, 351),
|
|
|
font=font,
|
|
|
text=bangmian,
|
|
|
align="left",
|
|
|
@@ -264,7 +302,7 @@ class DetailPicGet(DetailBase):
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(551, 346),
|
|
|
+ value=(551, 351),
|
|
|
font=font,
|
|
|
text=neili,
|
|
|
align="left",
|
|
|
@@ -275,7 +313,7 @@ class DetailPicGet(DetailBase):
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(230, 456),
|
|
|
+ value=(230, 461),
|
|
|
font=font,
|
|
|
text=xiedi,
|
|
|
align="left",
|
|
|
@@ -286,7 +324,7 @@ class DetailPicGet(DetailBase):
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(551, 456),
|
|
|
+ value=(551, 461),
|
|
|
font=font,
|
|
|
text=xiedian,
|
|
|
align="left",
|
|
|
@@ -299,7 +337,7 @@ class DetailPicGet(DetailBase):
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
value=(64, 901),
|
|
|
font=font_hei,
|
|
|
- text=xiekuan,
|
|
|
+ text=f"鞋宽\n{xiekuan}",
|
|
|
align="left",
|
|
|
# anchor="ma",
|
|
|
spacing=5,
|
|
|
@@ -310,7 +348,7 @@ class DetailPicGet(DetailBase):
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
value=(621, 650),
|
|
|
font=font_hei,
|
|
|
- text=banggao,
|
|
|
+ text=f"帮高\n{banggao}",
|
|
|
align="left",
|
|
|
# anchor="ma",
|
|
|
spacing=5,
|
|
|
@@ -321,7 +359,7 @@ class DetailPicGet(DetailBase):
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
value=(621, 752),
|
|
|
font=font_hei,
|
|
|
- text=gengao,
|
|
|
+ text=f"跟高\n{gengao}",
|
|
|
align="left",
|
|
|
# anchor="ma",
|
|
|
spacing=5,
|
|
|
@@ -335,26 +373,28 @@ class DetailPicGet(DetailBase):
|
|
|
def deal_pic_8(self):
|
|
|
detailed_images = []
|
|
|
pp_bg = PictureProcessing(r"{}\7.jpg".format(self.root))
|
|
|
+ pp_bg_circle = PictureProcessing(r"{}\bg_circle.png".format(self.root))
|
|
|
# detailed_images.append(pp_bg)
|
|
|
goods_art_no_list = list(self.data.keys())
|
|
|
all_color_name = []
|
|
|
- bg_color = (253, 250, 242)
|
|
|
+ bg_color = (254, 249, 245)
|
|
|
text_color = (70, 48, 41)
|
|
|
font = ImageFont.truetype(r"resources\ttf\puhui\Medium.ttf", 25)
|
|
|
goods_art_images = []
|
|
|
total_height = 0
|
|
|
for index, goods_art_no in enumerate(goods_art_no_list):
|
|
|
- pp_jpg = self.get_overlay_pic_from_dict(
|
|
|
+ pp_jpg,pp_png = self.image_one_pic(
|
|
|
goods_art_no=goods_art_no,
|
|
|
- color_name="侧视",
|
|
|
- bg_color=bg_color,
|
|
|
+ name="侧视",
|
|
|
+ return_orign=True,
|
|
|
)
|
|
|
if pp_jpg is None:
|
|
|
continue
|
|
|
- pp_jpg = pp_jpg.resize(value=pp_bg.width/2.5)
|
|
|
+ pp_jpg = pp_jpg.resize(value=pp_bg.width / 2.5)
|
|
|
+ pp_png = pp_png.resize(value=pp_bg.width / 2.5)
|
|
|
color_name = self.goods_no_value["货号资料"][index]["颜色名称"]
|
|
|
all_color_name.append(color_name)
|
|
|
- text_bg = PictureProcessing("RGB", (pp_jpg.width, 50), bg_color)
|
|
|
+ text_bg = PictureProcessing("RGBA", (pp_jpg.width, 50), (255,255,255,0))
|
|
|
text_bg = text_bg.get_text_image_advanced(
|
|
|
value=(0, 0),
|
|
|
font=font,
|
|
|
@@ -371,11 +411,13 @@ class DetailPicGet(DetailBase):
|
|
|
(pp_bg.width / 2, pp_jpg.height+200),
|
|
|
bg_color,
|
|
|
)
|
|
|
+ pp_bg_circle = pp_bg_circle.resize(value=_bg.width/2)
|
|
|
+ _bg.paste_img(top_img=pp_bg_circle, base="center")
|
|
|
if (index+1) == 1:
|
|
|
total_height += _bg.height
|
|
|
if (index + 1) % 2 != 0 and (index + 1) != 1:
|
|
|
total_height += _bg.height
|
|
|
- _bg = _bg.paste_img(top_img=pp_jpg, base="center")
|
|
|
+ _bg = _bg.to_overlay_pic_advance(top_img=pp_jpg,top_png_img=pp_png, base="center")
|
|
|
_bg = _bg.paste_img(
|
|
|
top_img=text_bg, value=(pp_jpg.width / 2, pp_jpg.height+100)
|
|
|
)
|
|
|
@@ -406,17 +448,9 @@ class DetailPicGet(DetailBase):
|
|
|
# 角度展示
|
|
|
def deal_pic_10(self):
|
|
|
detailed_images = []
|
|
|
- # 角度展示标题
|
|
|
- detailed_images.append(PictureProcessing(r"{}\10.jpg".format(self.root)))
|
|
|
- return self.pp_pic_subsection(
|
|
|
- PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
- )
|
|
|
-
|
|
|
- # 添加注意事项
|
|
|
- def deal_pic_11(self):
|
|
|
- detailed_images = []
|
|
|
- image_path = r"{}\11.jpg".format(self.root)
|
|
|
- pp_bg = PictureProcessing(image_path)
|
|
|
+ image_path = r"{}\10.jpg".format(self.root)
|
|
|
+ pp_bg = PictureProcessing(image_path,1600)
|
|
|
+ pp_arrow = PictureProcessing(r"{}\arrow.png".format(self.root))
|
|
|
goods_art_no_list = list(self.data.keys())
|
|
|
pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
return_orign=True,
|
|
|
@@ -425,6 +459,14 @@ class DetailPicGet(DetailBase):
|
|
|
)
|
|
|
pp_jpg_1 = pp_jpg_1.resize(value=1400)
|
|
|
pp_png_1 = pp_png_1.resize(value=1400)
|
|
|
+ bg_circl = PictureProcessing("RGB", (300, 300), (239, 208, 177))
|
|
|
+ bg_circl_paste = PictureProcessing("RGB", (290, 290), (239, 208, 177))
|
|
|
+ bg_circl_paste.paste_img(top_img=pp_jpg_1, base="center")
|
|
|
+ bg_circl_paste = bg_circl_paste.radius(value=145, circular_pos=(1, 1, 1, 1))
|
|
|
+ bg_circl = bg_circl.radius(value=150, circular_pos=(1, 1, 1, 1))
|
|
|
+ bg_circl = bg_circl.paste_img(top_img=bg_circl_paste, base="center")
|
|
|
+ bg_circl = bg_circl.paste_img(top_img=pp_arrow, base="nc")
|
|
|
+ pp_bg = pp_bg.paste_img(top_img=bg_circl, base="nw", value=(63, 493))
|
|
|
pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
mode="pixel",
|
|
|
top_img=pp_jpg_1,
|
|
|
@@ -438,7 +480,7 @@ class DetailPicGet(DetailBase):
|
|
|
mainTitle = self.get_text_value("细节亮点主标题")
|
|
|
subTitle = self.get_text_value("细节亮点副标题")
|
|
|
pp_bg.get_text_image_advanced(
|
|
|
- value=(pp_bg.width/2, 219),
|
|
|
+ value=(pp_bg.width / 2, 219),
|
|
|
font=font_main,
|
|
|
text=mainTitle,
|
|
|
align="center",
|
|
|
@@ -461,140 +503,147 @@ class DetailPicGet(DetailBase):
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
detailed_images.append(pp_bg)
|
|
|
- bg_12_image_path = r"{}\12.jpg".format(self.root)
|
|
|
- bg_12 = PictureProcessing(bg_12_image_path)
|
|
|
- detailed_images.append(bg_12)
|
|
|
return self.pp_pic_subsection(
|
|
|
PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
)
|
|
|
|
|
|
- def deal_pic_13(self):
|
|
|
+ # 添加注意事项
|
|
|
+ def deal_pic_11(self):
|
|
|
+ """
|
|
|
+ bg_12_image_path = r"{}\12.jpg".format(self.root)
|
|
|
+ bg_12 = PictureProcessing(bg_12_image_path)
|
|
|
+ detailed_images.append(bg_12)
|
|
|
+ """
|
|
|
detailed_images = []
|
|
|
- image_path = r"{}\13.jpg".format(self.root)
|
|
|
- pp_bg = PictureProcessing(image_path)
|
|
|
- image_path_1 = r"{}\13_1.png".format(self.root)
|
|
|
- pp_bg_1 = PictureProcessing(image_path_1)
|
|
|
+ image_path = r"{}\11.png".format(self.root)
|
|
|
+ pp_bg = PictureProcessing(image_path, 1600)
|
|
|
+ pp_bg_backend = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width, pp_bg.height), (245, 235, 226)
|
|
|
+ )
|
|
|
+ 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=2000)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=2000)
|
|
|
+ pp_bg_backend = pp_bg_backend.to_overlay_pic_advance(
|
|
|
+ mode="pixel",
|
|
|
+ top_img=pp_jpg_1,
|
|
|
+ base="cs",
|
|
|
+ value=(0, -50),
|
|
|
+ top_png_img=pp_png_1,
|
|
|
+ )
|
|
|
font_main = ImageFont.truetype(
|
|
|
r"resources\ttf\puhui\Medium.ttf", 58
|
|
|
) # 设计理念
|
|
|
- pp_bg.get_text_image_advanced(
|
|
|
- value=(pp_bg.width / 2, 168),
|
|
|
+ pp_bg_backend.get_text_image_advanced(
|
|
|
+ value=(pp_bg.width / 2, 219),
|
|
|
font=font_main,
|
|
|
- text="经典系带",
|
|
|
+ text="经 典 系 带",
|
|
|
align="center",
|
|
|
anchor="ma",
|
|
|
spacing=5,
|
|
|
- fill=(60, 40, 29),
|
|
|
+ fill=(107, 70, 61),
|
|
|
return_mode="image",
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
font_sub = ImageFont.truetype(r"resources\ttf\puhui\Light.ttf", 36) # 设计理念
|
|
|
- pp_bg.get_text_image_advanced(
|
|
|
- value=(pp_bg.width / 2, 261),
|
|
|
+ pp_bg_backend.get_text_image_advanced(
|
|
|
+ value=(pp_bg.width / 2, 313),
|
|
|
font=font_sub,
|
|
|
- text="松紧自由调节",
|
|
|
+ text="松 紧 自 由 调 节",
|
|
|
align="center",
|
|
|
anchor="ma",
|
|
|
spacing=5,
|
|
|
- fill=(60, 40, 29),
|
|
|
+ fill=(107, 70, 61),
|
|
|
return_mode="image",
|
|
|
margins=(0, 0, 0, 0),
|
|
|
)
|
|
|
- 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=1500)
|
|
|
- pp_png_1 = pp_png_1.resize(value=1500)
|
|
|
- pp_bg = pp_bg.to_overlay_pic_advance(
|
|
|
- mode="pixel",
|
|
|
- top_img=pp_jpg_1,
|
|
|
- base="cs",
|
|
|
- value=(0, - pp_jpg_1.height/4),
|
|
|
- top_png_img=pp_png_1,
|
|
|
- )
|
|
|
- pp_bg.paste_img(top_img=pp_bg_1)
|
|
|
- detailed_images.append(pp_bg)
|
|
|
+ pp_bg_backend.paste_img(top_img=pp_bg,base="center")
|
|
|
+ detailed_images.append(pp_bg_backend)
|
|
|
+ # bg_12_image_path = r"{}\12.jpg".format(self.root)
|
|
|
+ # bg_12 = PictureProcessing(bg_12_image_path)
|
|
|
+ # detailed_images.append(bg_12)
|
|
|
return self.pp_pic_subsection(
|
|
|
PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
)
|
|
|
|
|
|
- def deal_pic_14(self):
|
|
|
- # 场景展示
|
|
|
+ def deal_pic_13(self):
|
|
|
detailed_images = []
|
|
|
- image_path = r"{}\14.jpg".format(self.root)
|
|
|
- pp_bg_14 = PictureProcessing(image_path)
|
|
|
- goods_art_no_list = list(self.data.keys())
|
|
|
- # print("执行14")
|
|
|
- pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
- return_orign=True,
|
|
|
- goods_art_no=goods_art_no_list[0],
|
|
|
- name="组合",
|
|
|
- )
|
|
|
- if pp_jpg_1:
|
|
|
- pp_jpg_1 = pp_jpg_1.resize(value=pp_bg_14.width)
|
|
|
- pp_png_1 = pp_png_1.resize(value=pp_bg_14.width)
|
|
|
- pp_bg_14 = pp_bg_14.to_overlay_pic_advance(
|
|
|
- mode="pixel",
|
|
|
- top_img=pp_jpg_1,
|
|
|
- base="cc",
|
|
|
- value=(0, 0),
|
|
|
- top_png_img=pp_png_1,
|
|
|
+ image_path = r"{}\12.jpg".format(self.root)
|
|
|
+ pp_bg = PictureProcessing(image_path,1600)
|
|
|
+ detailed_images.append(pp_bg)
|
|
|
+ radius_top = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width * 0.75, 40), (255, 255, 255)
|
|
|
+ ).radius(value=30, circular_pos=(1, 1, 0, 0))
|
|
|
+ radius_top_bg = PictureProcessing("RGB", (pp_bg.width, 40), (253, 246, 237))
|
|
|
+ image_list = ["俯视","侧视","后跟"]
|
|
|
+ for item in image_list:
|
|
|
+ pp_bg_background = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width, 800), (253, 246, 237)
|
|
|
)
|
|
|
- detailed_images.append(pp_bg_14)
|
|
|
- return self.pp_pic_subsection(
|
|
|
- PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
- )
|
|
|
-
|
|
|
- def deal_pic_15(self):
|
|
|
- detailed_images = []
|
|
|
- image_path = r"{}\15.jpg".format(self.root)
|
|
|
- pp_bg_15 = PictureProcessing(image_path)
|
|
|
- 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="组合2",
|
|
|
- )
|
|
|
- if pp_jpg_1:
|
|
|
- pp_jpg_1 = pp_jpg_1.resize(value=pp_bg_15.width)
|
|
|
- pp_png_1 = pp_png_1.resize(value=pp_bg_15.width)
|
|
|
- pp_bg_15 = pp_bg_15.to_overlay_pic_advance(
|
|
|
- mode="pixel",
|
|
|
- top_img=pp_jpg_1,
|
|
|
- base="cc",
|
|
|
- value=(0, 0),
|
|
|
- top_png_img=pp_png_1,
|
|
|
+ pp_bg_radius = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width * 0.85, 800), (255, 255, 255)
|
|
|
)
|
|
|
- detailed_images.append(pp_bg_15)
|
|
|
- return self.pp_pic_subsection(
|
|
|
- PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
- )
|
|
|
-
|
|
|
- def deal_pic_16(self):
|
|
|
- detailed_images = []
|
|
|
- image_path = r"{}\16.jpg".format(self.root)
|
|
|
- pp_bg_16 = PictureProcessing(image_path)
|
|
|
- goods_art_no_list = list(self.data.keys())
|
|
|
- print("执行16")
|
|
|
- pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
- return_orign=True,
|
|
|
- goods_art_no=goods_art_no_list[0],
|
|
|
- name="组合3",
|
|
|
- )
|
|
|
- if pp_jpg_1:
|
|
|
- pp_jpg_1 = pp_jpg_1.resize(value=pp_bg_16.width)
|
|
|
- pp_png_1 = pp_png_1.resize(value=pp_bg_16.width)
|
|
|
- pp_bg_16 = pp_bg_16.to_overlay_pic_advance(
|
|
|
- mode="pixel",
|
|
|
- top_img=pp_jpg_1,
|
|
|
- base="cc",
|
|
|
- value=(0, 0),
|
|
|
- top_png_img=pp_png_1,
|
|
|
+ radius_top_bg = radius_top_bg.paste_img(top_img=radius_top, base="cc")
|
|
|
+ detailed_images.append(radius_top_bg)
|
|
|
+ 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=item,
|
|
|
+ )
|
|
|
+ if item =="俯视":
|
|
|
+ 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=pp_bg_radius.width / 1.3)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=pp_bg_radius.width / 1.3)
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(-50, 0)
|
|
|
+ )
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(50, 60)
|
|
|
+ )
|
|
|
+ if item == "侧视":
|
|
|
+ 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=pp_bg_radius.width / 1.3)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=pp_bg_radius.width / 1.3)
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(60, 0)
|
|
|
+ )
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(-60, 0)
|
|
|
+ )
|
|
|
+ if item == "后跟":
|
|
|
+ pp_jpg_1 = pp_jpg_1.resize(value=pp_bg_radius.width / 2.3)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=pp_bg_radius.width / 2.3)
|
|
|
+ pp_jpg_1 = pp_jpg_1.transpose()
|
|
|
+ pp_png_1 = pp_png_1.transpose()
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(130, 0)
|
|
|
+ )
|
|
|
+ pp_jpg_1 = pp_jpg_1.transpose()
|
|
|
+ pp_png_1 = pp_png_1.transpose()
|
|
|
+ pp_bg_radius = pp_bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="cc", value=(-130, 0)
|
|
|
+ )
|
|
|
+ pp_bg_radius = pp_bg_radius.radius(value=30, circular_pos=(1, 1, 1, 1))
|
|
|
+ pp_bg_background.paste_img(top_img=pp_bg_radius, base="cc", value=(0, 0))
|
|
|
+ detailed_images.append(pp_bg_background)
|
|
|
+ radius_bottom = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width * 0.75, 40), (255, 255, 255)
|
|
|
+ ).radius(value=30, circular_pos=(0, 0, 1, 1))
|
|
|
+ radius_bottom_bg = PictureProcessing("RGB", (pp_bg.width, 40), (253, 246, 237))
|
|
|
+ radius_bottom_bg = radius_bottom_bg.paste_img(top_img=radius_bottom, base="cc")
|
|
|
+ detailed_images.append(radius_bottom_bg)
|
|
|
+ detailed_images.append(
|
|
|
+ PictureProcessing("RGB", (pp_bg.width, 50), (253, 246, 237))
|
|
|
)
|
|
|
- detailed_images.append(pp_bg_16)
|
|
|
return self.pp_pic_subsection(
|
|
|
PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
)
|
|
|
@@ -776,13 +825,130 @@ class DetailPicGet(DetailBase):
|
|
|
|
|
|
def deal_pic_20(self):
|
|
|
detailed_images = []
|
|
|
- bg_20 = PictureProcessing(r"{}\20.jpg".format(self.root))
|
|
|
+ font = ImageFont.truetype(r"resources\ttf\puhui\Medium.ttf", 30) # 设计理念
|
|
|
+ pp_bg = PictureProcessing(r"{}\20.jpg".format(self.root))
|
|
|
+ detailed_images.append(pp_bg)
|
|
|
+ goods_art_no_list = list(self.data.keys())
|
|
|
+ for item in goods_art_no_list:
|
|
|
+ radius_top_bg = PictureProcessing(
|
|
|
+ "RGB", (pp_bg.width, 1048), (253, 246, 237)
|
|
|
+ )
|
|
|
+ bg_radius = PictureProcessing(
|
|
|
+ "RGB",
|
|
|
+ (pp_bg.width * 0.85, radius_top_bg.height * 0.85),
|
|
|
+ (255, 255, 255),
|
|
|
+ )
|
|
|
+ pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
+ return_orign=True,
|
|
|
+ goods_art_no=item,
|
|
|
+ name="俯视",
|
|
|
+ )
|
|
|
+ pp_jpg_1 = pp_jpg_1.resize(value=bg_radius.width/1.3)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=bg_radius.width /1.3)
|
|
|
+ bg_radius = bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="nc",value=(0,150)
|
|
|
+ )
|
|
|
+ bg_radius = bg_radius.radius(value=30)
|
|
|
+ text_bg = PictureProcessing(
|
|
|
+ "RGBA", (pp_jpg_1.width, 50), (255, 255, 255, 0)
|
|
|
+ )
|
|
|
+ text_bg = text_bg.get_text_image_advanced(
|
|
|
+ value=(0, 0),
|
|
|
+ font=font,
|
|
|
+ text="斜面展示",
|
|
|
+ align="center",
|
|
|
+ # anchor="mm",
|
|
|
+ spacing=5,
|
|
|
+ fill=(70, 45, 36),
|
|
|
+ return_mode="min_image",
|
|
|
+ margins=(0, 0, 0, 0),
|
|
|
+ )
|
|
|
+ _bg = PictureProcessing(
|
|
|
+ "RGBA",
|
|
|
+ (pp_bg.width / 2, pp_png_1.height + 200),
|
|
|
+ (255, 255, 255,0),
|
|
|
+ )
|
|
|
+ _bg.paste_img(top_img=text_bg, base="center")
|
|
|
+ bg_radius.paste_img(top_img=_bg, base="center")
|
|
|
+ radius_top_bg = radius_top_bg.paste_img(top_img=bg_radius, base="center")
|
|
|
+ pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
+ return_orign=True,
|
|
|
+ goods_art_no=item,
|
|
|
+ name="内里",
|
|
|
+ )
|
|
|
+ pp_jpg_1 = pp_jpg_1.resize(value=bg_radius.width / 2)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=bg_radius.width / 2)
|
|
|
+ bg_radius = bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="sw", value=(0, 150)
|
|
|
+ )
|
|
|
+ bg_radius = bg_radius.radius(value=30)
|
|
|
+ text_bg = PictureProcessing(
|
|
|
+ "RGBA", (pp_jpg_1.width, 50), (255, 255, 255, 0)
|
|
|
+ )
|
|
|
+ text_bg = text_bg.get_text_image_advanced(
|
|
|
+ value=(0, 0),
|
|
|
+ font=font,
|
|
|
+ text="鞋面展示",
|
|
|
+ align="center",
|
|
|
+ # anchor="mm",
|
|
|
+ spacing=5,
|
|
|
+ fill=(70, 45, 36),
|
|
|
+ return_mode="min_image",
|
|
|
+ margins=(0, 0, 0, 0),
|
|
|
+ )
|
|
|
+ _bg = PictureProcessing(
|
|
|
+ "RGBA",
|
|
|
+ (pp_bg.width / 2, pp_png_1.height + 150),
|
|
|
+ (255, 255, 255, 0),
|
|
|
+ )
|
|
|
+ _bg.paste_img(top_img=text_bg, base="center")
|
|
|
+ bg_radius.paste_img(top_img=_bg, base="sw",value=(-50,-20))
|
|
|
+ radius_top_bg = radius_top_bg.paste_img(top_img=bg_radius, base="center")
|
|
|
+ pp_jpg_1, pp_png_1 = self.image_one_pic(
|
|
|
+ return_orign=True,
|
|
|
+ goods_art_no=item,
|
|
|
+ name="鞋底",
|
|
|
+ )
|
|
|
+ pp_jpg_1 = pp_jpg_1.resize(value=bg_radius.width / 2)
|
|
|
+ pp_png_1 = pp_png_1.resize(value=bg_radius.width / 2)
|
|
|
+ bg_radius = bg_radius.to_overlay_pic_advance(
|
|
|
+ top_img=pp_jpg_1, top_png_img=pp_png_1, base="es", value=(0, 150)
|
|
|
+ )
|
|
|
+ bg_radius = bg_radius.radius(value=30)
|
|
|
+ text_bg = PictureProcessing(
|
|
|
+ "RGBA", (pp_jpg_1.width, 50), (255, 255, 255, 0)
|
|
|
+ )
|
|
|
+ text_bg = text_bg.get_text_image_advanced(
|
|
|
+ value=(0, 0),
|
|
|
+ font=font,
|
|
|
+ text="鞋面展示",
|
|
|
+ align="center",
|
|
|
+ # anchor="mm",
|
|
|
+ spacing=5,
|
|
|
+ fill=(70, 45, 36),
|
|
|
+ return_mode="min_image",
|
|
|
+ margins=(0, 0, 0, 0),
|
|
|
+ )
|
|
|
+ _bg = PictureProcessing(
|
|
|
+ "RGBA",
|
|
|
+ (pp_bg.width / 2, pp_png_1.height + 150),
|
|
|
+ (255, 255, 255, 0),
|
|
|
+ )
|
|
|
+ _bg.paste_img(top_img=text_bg, base="center")
|
|
|
+ bg_radius.paste_img(top_img=_bg, base="es", value=(-50, -20))
|
|
|
+ radius_top_bg = radius_top_bg.paste_img(top_img=bg_radius, base="center")
|
|
|
+ detailed_images.append(radius_top_bg)
|
|
|
+ return self.pp_pic_subsection(
|
|
|
+ PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
+ )
|
|
|
+
|
|
|
+ def deal_pic_21(self):
|
|
|
+ detailed_images = []
|
|
|
bg_21 = PictureProcessing(r"{}\21.jpg".format(self.root))
|
|
|
- bg_22 = PictureProcessing(r"{}\22.jpg".format(self.root))
|
|
|
- detailed_images.append(bg_20)
|
|
|
detailed_images.append(bg_21)
|
|
|
- detailed_images.append(bg_22)
|
|
|
- return self.pp_pic_subsection(PictureProcessing(im=self.add_pic(detailed_images)))
|
|
|
+ return self.pp_pic_subsection(
|
|
|
+ PictureProcessing(im=self.add_pic(detailed_images))
|
|
|
+ )
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|