Use _accept function in example plugin [ci skip]

This commit is contained in:
Andrew Murray 2020-05-17 09:24:06 +10:00
parent bc1dc14b59
commit 67d26ed051

View File

@ -53,6 +53,11 @@ true color.
from PIL import Image, ImageFile from PIL import Image, ImageFile
def _accept(prefix):
return prefix[:4] == b"SPAM"
class SpamImageFile(ImageFile.ImageFile): class SpamImageFile(ImageFile.ImageFile):
format = "SPAM" format = "SPAM"
@ -60,12 +65,7 @@ true color.
def _open(self): def _open(self):
# check header header = self.fp.read(128).split()
header = self.fp.read(128)
if header[:4] != b"SPAM":
raise SyntaxError("not a SPAM file")
header = header.split()
# size in pixels (width, height) # size in pixels (width, height)
self._size = int(header[1]), int(header[2]) self._size = int(header[1]), int(header[2])
@ -86,7 +86,7 @@ true color.
("raw", (0, 0) + self.size, 128, (self.mode, 0, 1)) ("raw", (0, 0) + self.size, 128, (self.mode, 0, 1))
] ]
Image.register_open(SpamImageFile.format, SpamImageFile) Image.register_open(SpamImageFile.format, SpamImageFile, _accept)
Image.register_extension(SpamImageFile.format, ".spam") Image.register_extension(SpamImageFile.format, ".spam")
Image.register_extension(SpamImageFile.format, ".spa") # dos version Image.register_extension(SpamImageFile.format, ".spa") # dos version