Amazing-Python-Scripts

Форк
0
50 строк · 1.4 Кб
1
import os
2
import sys
3
from os.path import join
4
from PIL import Image, ImageEnhance
5

6

7
def FolderSelectAndRun():
8
    batch(
9
        "<input folder>",
10
        "<output folder>",
11
        "<watermark image>"
12
    )
13

14

15
basewidth = 2048
16

17

18
def batch(infolder, outfolder, watermark):
19
    mark = Image.open(watermark)
20
    count = 0
21
    for root, dirs, files in os.walk(infolder):
22
        for name in files:
23
            try:
24
                count += 1
25
                im = Image.open(join(root, name))
26

27
                # New image in the making
28
                layer = Image.new('RGBA', im.size, (0, 0, 0, 0))
29
                position = (im.size[0] - (mark.size[0] + 50),
30
                            im.size[1] - (mark.size[1] + 50))
31
                layer.paste(mark, position)
32
                new_image = Image.composite(layer, im, layer)
33

34
                # Resize in perspective
35
                wpercent = (basewidth / float(im.size[0]))
36
                hsize = int((float(new_image.size[1]) * float(wpercent)))
37
                smaller_new_image = new_image.resize(
38
                    (basewidth, hsize), Image.ANTIALIAS)
39

40
                # Save new smaller image
41
                smaller_new_image.save(
42
                    join(outfolder, ('with-watermark_' + name)), 'jpeg')
43

44
            except Exception as error:
45
                # Debug line while making changes
46
                print('Caught this error: ' + repr(error))
47

48

49
if __name__ == '__main__':
50
    FolderSelectAndRun()
51

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.