Pillow/Tests/test_psdraw.py
2014-12-27 22:50:17 +02:00

51 lines
1.2 KiB
Python

from helper import unittest, PillowTestCase
class TestPsDraw(PillowTestCase):
def test_draw_postscript(self):
# Based on Pillow tutorial, but there is no textsize:
# http://pillow.readthedocs.org/en/latest/handbook/tutorial.html
# Arrange
from PIL import Image
from PIL import PSDraw
tempfile = self.tempfile('temp.ps')
fp = open(tempfile, "wb")
im = Image.open("Tests/images/hopper.ppm")
title = "hopper"
box = (1*72, 2*72, 7*72, 10*72) # in points
# Act
ps = PSDraw.PSDraw(fp)
ps.begin_document(title)
# draw diagonal lines in a cross
ps.line((1*72, 2*72), (7*72, 10*72))
ps.line((7*72, 2*72), (1*72, 10*72))
# draw the image (75 dpi)
ps.image(box, im, 75)
ps.rectangle(box)
# draw title
ps.setfont("Courier", 36)
ps.text((3*72, 4*72), title)
ps.end_document()
fp.close()
# Assert
# Check non-zero file was created
import os
self.assertTrue(os.path.isfile(tempfile))
self.assertGreater(os.path.getsize(tempfile), 0)
if __name__ == '__main__':
unittest.main()
# End of file