└── Adding watermarks to images /Adding watermarks to images: -------------------------------------------------------------------------------- 1 | import os 2 | from PIL import Image 3 | 4 | def watermark_photo(input_image_path,watermark_image_path,output_image_path): 5 | base_image = Image.open(input_image_path) 6 | watermark = Image.open(watermark_image_path).convert("RGBA") 7 | # add watermark to your image 8 | position = base_image.size 9 | newsize = (int(position[0]*8/100),int(position[0]*8/100)) 10 | # print(position) 11 | watermark = watermark.resize(newsize) 12 | # print(newsize) 13 | # return watermark 14 | 15 | new_position = position[0]-newsize[0]-20,position[1]-newsize[1]-20 16 | # create a new transparent image 17 | transparent = Image.new(mode='RGBA',size=position,color=(0,0,0,0)) 18 | # paste the original image 19 | transparent.paste(base_image,(0,0)) 20 | # paste the watermark image 21 | transparent.paste(watermark,new_position,watermark) 22 | image_mode = base_image.mode 23 | print(image_mode) 24 | if image_mode == 'RGB': 25 | transparent = transparent.convert(image_mode) 26 | else: 27 | transparent = transparent.convert('P') 28 | transparent.save(output_image_path,optimize=True,quality=100) 29 | print("Saving"+output_image_path+"...") 30 | 31 | folder = input("Enter Folder Path:") 32 | watermark = input("Enter Watermark Path:") 33 | os.chdir(folder) 34 | files = os.listdir(os.getcwd()) 35 | print(files) 36 | 37 | if not os.path.isdir("output"): 38 | os.mkdir("output") 39 | 40 | c = 1 41 | for f in files: 42 | if os.path.isfile(os.path.abspath(f)): 43 | if f.endswith(".png") or f.endswith(".jpg"): 44 | watermark_photo(f,watermark,"output/"+f) 45 | --------------------------------------------------------------------------------