Teachers 发表于 2021-8-31 15:41

Python长图切片分割小工具

## 说明

我是做电商的,厂家会发一些商品素材,详情页没有切割,直接是一个长图,拉PS里面处理太麻烦,于是就用Python写了这个工具。

## 代码
```
import os
from PIL import Image

if __name__ == '__main__':
    path = input("请将图片拖入此窗口:")
    row = int(input("请输入切片行数:"))
    if not os.path.exists('图片切片'):
      os.mkdir('图片切片')
    img = Image.open(path)
    width, hight = img.size
    num = 1
    row_higth = 0
    for i in range(row):
      print("正在保存第%d张" % num)
      img.crop((0, row_higth, width, hight // row * num)).save("图片切片/%s.png" % num, "PNG")
      row_higth = row_higth + hight // row
      num = num + 1
```

## 附言
是按图片长度平均分割的

ljscx_001 发表于 2021-9-1 10:26

本帖最后由 ljscx_001 于 2021-9-1 10:30 编辑

加了个列

~~~python
import os
from PIL import Image

if __name__ == '__main__':
      path = input("请将图片拖入此窗口(回车键继续):")
      row = int(input("请输入切片行数:"))
      line = int(input("请输入切片行数:"))
      if not os.path.exists('图片切片'):
                os.mkdir('图片切片')
      img = Image.open(path)
      width, hight = img.size
      num = 1
      row_higth = 0
      line_higth = 0

      for i in range(row):
                forj in range(line):
                        print("正在保存第%d张" % num)
                        img.crop((line_higth , row_higth, width//line*(j+1), hight // row * (i+1))).save("图片切片/%s.png" % num, "PNG")
                        line_higth = line_higth+width//line               
                        num = num + 1
                row_higth = row_higth + hight//row
                line_higth=0
~~~

JuncoJet 发表于 2021-8-31 15:54

convert -crop x800 in.jpg out.jpg
convert -crop 30% in.jpg out.jpg

jjl 发表于 2021-8-31 15:58

正在学习Python,感谢分享

zym632 发表于 2021-8-31 16:01

感谢分享

13232929610 发表于 2021-8-31 16:12

学习Python一段时间了,谢谢分享

伊霜QAQ 发表于 2021-8-31 16:18

感谢分享

流浪神犬 发表于 2021-8-31 16:20

新新手,向楼主学习,感谢分享。

fhvk1993 发表于 2021-8-31 16:22

有成品没

doglove 发表于 2021-8-31 16:42

有EXE运行 文件 吗。代码看不懂。

天马行星空 发表于 2021-8-31 16:53

想学Python零基础能行吗
页: [1] 2 3 4 5
查看完整版本: Python长图切片分割小工具