Coverage for pyguymer3/image/return_image_size.py: 67%
15 statements
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-08 18:47 +0000
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-08 18:47 +0000
1#!/usr/bin/env python3
3# Define function ...
4def return_image_size(
5 fname,
6 /,
7 *,
8 compressed = False,
9):
10 # Import standard modules ...
11 import gzip
13 # Import special modules ...
14 try:
15 import PIL
16 import PIL.Image
17 PIL.Image.MAX_IMAGE_PIXELS = 1024 * 1024 * 1024 # [px]
18 except:
19 raise Exception("\"PIL\" is not installed; run \"pip install --user Pillow\"") from None
21 # Check if the image is compressed ...
22 if compressed:
23 # Open compressed file ...
24 with gzip.open(fname, mode = "rb") as gzObj:
25 # Open image as RGB (even if it is paletted) ...
26 with PIL.Image.open(gzObj) as iObj:
27 im = iObj.convert("RGB")
28 else:
29 # Open image as RGB (even if it is paletted) ...
30 with PIL.Image.open(fname) as iObj:
31 im = iObj.convert("RGB")
33 # Return answer ...
34 return im.size