mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-27 10:26:19 +03:00
Merge pull request #2647 from radarhere/spider
Added file pointer save to SpiderImagePlugin
This commit is contained in:
commit
04052e85c9
|
@ -267,17 +267,11 @@ def _save(im, fp, filename):
|
||||||
raise IOError("Error creating Spider header")
|
raise IOError("Error creating Spider header")
|
||||||
|
|
||||||
# write the SPIDER header
|
# write the SPIDER header
|
||||||
try:
|
|
||||||
fp = open(filename, 'wb')
|
|
||||||
except:
|
|
||||||
raise IOError("Unable to open %s for writing" % filename)
|
|
||||||
fp.writelines(hdr)
|
fp.writelines(hdr)
|
||||||
|
|
||||||
rawmode = "F;32NF" # 32-bit native floating point
|
rawmode = "F;32NF" # 32-bit native floating point
|
||||||
ImageFile._save(im, fp, [("raw", (0, 0)+im.size, 0, (rawmode, 0, 1))])
|
ImageFile._save(im, fp, [("raw", (0, 0)+im.size, 0, (rawmode, 0, 1))])
|
||||||
|
|
||||||
fp.close()
|
|
||||||
|
|
||||||
|
|
||||||
def _save_spider(im, fp, filename):
|
def _save_spider(im, fp, filename):
|
||||||
# get the filename extension and register it with Image
|
# get the filename extension and register it with Image
|
||||||
|
|
|
@ -4,6 +4,8 @@ from PIL import Image
|
||||||
from PIL import ImageSequence
|
from PIL import ImageSequence
|
||||||
from PIL import SpiderImagePlugin
|
from PIL import SpiderImagePlugin
|
||||||
|
|
||||||
|
import tempfile
|
||||||
|
|
||||||
TEST_FILE = "Tests/images/hopper.spider"
|
TEST_FILE = "Tests/images/hopper.spider"
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,6 +32,21 @@ class TestImageSpider(PillowTestCase):
|
||||||
self.assertEqual(im2.size, (128, 128))
|
self.assertEqual(im2.size, (128, 128))
|
||||||
self.assertEqual(im2.format, "SPIDER")
|
self.assertEqual(im2.format, "SPIDER")
|
||||||
|
|
||||||
|
def test_tempfile(self):
|
||||||
|
# Arrange
|
||||||
|
im = hopper()
|
||||||
|
|
||||||
|
# Act
|
||||||
|
with tempfile.TemporaryFile() as fp:
|
||||||
|
im.save(fp, "SPIDER")
|
||||||
|
|
||||||
|
# Assert
|
||||||
|
fp.seek(0)
|
||||||
|
reloaded = Image.open(fp)
|
||||||
|
self.assertEqual(reloaded.mode, "F")
|
||||||
|
self.assertEqual(reloaded.size, (128, 128))
|
||||||
|
self.assertEqual(reloaded.format, "SPIDER")
|
||||||
|
|
||||||
def test_isSpiderImage(self):
|
def test_isSpiderImage(self):
|
||||||
self.assertTrue(SpiderImagePlugin.isSpiderImage(TEST_FILE))
|
self.assertTrue(SpiderImagePlugin.isSpiderImage(TEST_FILE))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user