mirror of
https://github.com/python-pillow/Pillow.git
synced 2025-06-29 17:33:08 +03:00
Removed duplicate code in ImagePalette
This commit is contained in:
parent
ac6e1ef949
commit
f9b3a5dbe4
|
@ -18,6 +18,9 @@
|
||||||
|
|
||||||
import array
|
import array
|
||||||
from PIL import ImageColor
|
from PIL import ImageColor
|
||||||
|
from PIL import GimpPaletteFile
|
||||||
|
from PIL import GimpGradientFile
|
||||||
|
from PIL import PaletteFile
|
||||||
|
|
||||||
|
|
||||||
class ImagePalette(object):
|
class ImagePalette(object):
|
||||||
|
@ -196,42 +199,21 @@ def load(filename):
|
||||||
|
|
||||||
fp = open(filename, "rb")
|
fp = open(filename, "rb")
|
||||||
|
|
||||||
lut = None
|
for paletteHandler in [
|
||||||
|
GimpPaletteFile.GimpPaletteFile,
|
||||||
if not lut:
|
GimpGradientFile.GimpGradientFile,
|
||||||
|
PaletteFile.PaletteFile
|
||||||
|
]:
|
||||||
try:
|
try:
|
||||||
from PIL import GimpPaletteFile
|
|
||||||
fp.seek(0)
|
fp.seek(0)
|
||||||
p = GimpPaletteFile.GimpPaletteFile(fp)
|
lut = paletteHandler(fp).getpalette()
|
||||||
lut = p.getpalette()
|
if lut:
|
||||||
|
break
|
||||||
except (SyntaxError, ValueError):
|
except (SyntaxError, ValueError):
|
||||||
# import traceback
|
# import traceback
|
||||||
# traceback.print_exc()
|
# traceback.print_exc()
|
||||||
pass
|
pass
|
||||||
|
else:
|
||||||
if not lut:
|
|
||||||
try:
|
|
||||||
from PIL import GimpGradientFile
|
|
||||||
fp.seek(0)
|
|
||||||
p = GimpGradientFile.GimpGradientFile(fp)
|
|
||||||
lut = p.getpalette()
|
|
||||||
except (SyntaxError, ValueError):
|
|
||||||
# import traceback
|
|
||||||
# traceback.print_exc()
|
|
||||||
pass
|
|
||||||
|
|
||||||
if not lut:
|
|
||||||
try:
|
|
||||||
from PIL import PaletteFile
|
|
||||||
fp.seek(0)
|
|
||||||
p = PaletteFile.PaletteFile(fp)
|
|
||||||
lut = p.getpalette()
|
|
||||||
except (SyntaxError, ValueError):
|
|
||||||
# import traceback
|
|
||||||
# traceback.print_exc()
|
|
||||||
pass
|
|
||||||
|
|
||||||
if not lut:
|
|
||||||
raise IOError("cannot load palette")
|
raise IOError("cannot load palette")
|
||||||
|
|
||||||
return lut # data, rawmode
|
return lut # data, rawmode
|
||||||
|
|
Loading…
Reference in New Issue
Block a user