Browse Source

preserve high width/height ratios for covers

remotes/origin/split-songs
Romain Goffe 13 years ago
parent
commit
7a79b8365e
  1. 26
      utils/resize-cover.py

26
utils/resize-cover.py

@ -8,14 +8,30 @@
import Image
import glob
width = 128
height = 128
# Process song files
covers = glob.glob('songs/*/*.jpg')
for filename in covers:
source = Image.open(filename)
if source.size > (128, 128):
print "resizing : " + filename
src_width = source.size[0]
src_height = source.size[1]
ratio = float(src_height) / float(src_width)
width = 128
height = 128
error = 0.2 #0: always preserve ratio; 1: always square images
#tolerate almost square images
if ratio < 1 - error or ratio > 1 + error:
#print "preserve ratio = ", ratio
#preserve important ratio
if src_width < src_height:
height = int(width * ratio)
elif src_height < src_width:
width = int(height * ratio)
if src_width > width and src_height > height:
print "resize: ", filename, " from ", source.size, " to ", (width, height)
target = source.resize((width, height), Image.ANTIALIAS)
target.save(filename)

Loading…
Cancel
Save