1
0
mirror of https://github.com/gryf/ebook-converter.git synced 2025-12-18 13:10:17 +01:00

Remove getsize method of PIL in favor of getbbox

This commit is contained in:
2025-03-10 18:33:05 +01:00
parent 5e56cb8c7a
commit d37850520b
3 changed files with 5 additions and 5 deletions

View File

@@ -62,7 +62,7 @@ class PMLOutput(OutputFormatPlugin):
im = Image.open(io.BytesIO(item.data)) im = Image.open(io.BytesIO(item.data))
else: else:
im = Image.open(io.BytesIO(item.data)).convert('P') im = Image.open(io.BytesIO(item.data)).convert('P')
im.thumbnail((300,300), Image.ANTIALIAS) im.thumbnail((300,300), Image.LANCZOS)
data = io.BytesIO() data = io.BytesIO()
im.save(data, 'PNG') im.save(data, 'PNG')

View File

@@ -1012,7 +1012,7 @@ class HTMLConverter(object):
self.image_memory.append(pt) # Neccessary, trust me ;-) self.image_memory.append(pt) # Neccessary, trust me ;-)
try: try:
im.resize((int(width), int(height)), im.resize((int(width), int(height)),
PILImage.ANTIALIAS).save(pt, encoding) PILImage.LANCZOS).save(pt, encoding)
pt.close() pt.close()
self.scaled_images[path] = pt self.scaled_images[path] = pt
return pt.name return pt.name
@@ -1970,7 +1970,7 @@ def process_file(path, options, logger):
options.cover = cf.name options.cover = cf.name
tim = im.resize((int(0.75 * th), th), tim = im.resize((int(0.75 * th), th),
PILImage.ANTIALIAS).convert('RGB') PILImage.LANCZOS).convert('RGB')
tf = PersistentTemporaryFile(prefix=__appname__ + '_', tf = PersistentTemporaryFile(prefix=__appname__ + '_',
suffix=".jpg") suffix=".jpg")
tf.close() tf.close()

View File

@@ -145,7 +145,7 @@ class Cell(object):
continue continue
word = token.split() word = token.split()
word = word[0] if word else "" word = word[0] if word else ""
width = font.getsize(word)[0] width = font.getbbox(word)[2]
if width > mwidth: if width > mwidth:
mwidth = width mwidth = width
return parindent + mwidth + 2 return parindent + mwidth + 2
@@ -191,7 +191,7 @@ class Cell(object):
if (ff, fs) != (ts['fontfacename'], ts['fontsize']): if (ff, fs) != (ts['fontfacename'], ts['fontsize']):
font = get_font(ff, self.pts_to_pixels(fs)) font = get_font(ff, self.pts_to_pixels(fs))
for word in token.split(): for word in token.split():
width, height = font.getsize(word) _, _, width, height = font.getbbox(word)
left, right, top, bottom = add_word(width, height, left, right, top, bottom, ls, ws) left, right, top, bottom = add_word(width, height, left, right, top, bottom, ls, ws)
return right+3+max(parindent, 10), bottom return right+3+max(parindent, 10), bottom