Added manga-py source

This commit is contained in:
2019-12-14 22:33:14 -05:00
parent 9a4dd4b09b
commit 45067caea6
420 changed files with 18054 additions and 0 deletions

View File

@@ -0,0 +1,140 @@
import unittest
from os import path
from PIL import Image as PilImage
from manga_py import fs
from manga_py.image import Image
root_path = path.dirname(path.realpath(__file__))
files_paths = [
['/files/img1.jpg', '/temp/img1.jpg'],
['/files/img2.png', '/temp/img2.png'],
['/files/img3.jpg', '/temp/img3.jpg'],
['/files/img4.jpg', '/temp/img4.jpg'],
['/files/img5.png', '/temp/img5.png'],
['/files/img6.gif', '/temp/img6.gif'],
['/files/img7.webp', '/temp/img7.webp'],
]
class TestImages(unittest.TestCase):
def test_manual_crop(self):
for file in files_paths:
fs.unlink(root_path + file[1])
image = PilImage.open(root_path + file[0])
sizes = image.size
image.close()
img = Image(root_path + file[0])
img.crop_manual((10, 0, image.size[0], image.size[1]), root_path + file[1])
img.close()
cropped_image = PilImage.open(root_path + file[1])
cropped_sizes = cropped_image.size
cropped_image.close()
self.assertTrue((sizes[0] - cropped_sizes[0]) == 10)
def test_manual_crop_with_offsets(self):
for file in files_paths:
fs.unlink(root_path + file[1])
image = PilImage.open(root_path + file[0])
sizes = image.size
image.close()
img = Image(root_path + file[0])
img.crop_manual_with_offsets((10, 0, 0, 0), root_path + file[1])
img.close()
cropped_image = PilImage.open(root_path + file[1])
cropped_sizes = cropped_image.size
cropped_image.close()
self.assertTrue((sizes[0] - cropped_sizes[0]) == 10)
def test_auto_crop1(self):
file = files_paths[0]
fs.unlink(root_path + file[1])
image = PilImage.open(root_path + file[0])
sizes = image.size
image.close()
img = Image(root_path + file[0])
img.crop_auto(root_path + file[1])
img.close()
cropped_image = PilImage.open(root_path + file[1])
cropped_sizes = cropped_image.size
cropped_image.close()
self.assertTrue(sizes[0] > cropped_sizes[0])
def test_auto_crop2(self):
file = files_paths[1]
fs.unlink(root_path + file[1])
image = PilImage.open(root_path + file[0])
sizes = image.size
image.close()
img = Image(root_path + file[0])
img.crop_auto(root_path + file[1])
img.close()
cropped_image = PilImage.open(root_path + file[1])
cropped_sizes = cropped_image.size
cropped_image.close()
self.assertTrue(sizes[0] == cropped_sizes[0])
def test_auto_crop3(self):
file = files_paths[4]
fs.unlink(root_path + file[1])
image = PilImage.open(root_path + file[0])
sizes = image.size
image.close()
img = Image(root_path + file[0])
img.crop_auto(root_path + file[1])
img.close()
cropped_image = PilImage.open(root_path + file[1])
cropped_sizes = cropped_image.size
cropped_image.close()
self.assertTrue(sizes[0] == (2 + cropped_sizes[0])) # 2px black line
def test_image_not_found(self):
self.assertRaises(AttributeError, lambda: Image(root_path))
def test_gray1(self):
file = files_paths[1]
fs.unlink(root_path + file[1])
image = Image(root_path + file[0])
image.gray(root_path + file[1])
image.close()
image = PilImage.open(root_path + file[1])
index = image.mode.find('L')
image.close()
self.assertTrue(index == 0)
def test_convert(self):
file = files_paths[0][0]
image = Image(root_path + file)
basename = file[0:file.find('.')]
basename = root_path + '/temp' + basename + '.bmp'
image.convert(basename)
image.close()
self.assertTrue(path.isfile(basename))