"""Read-only alpha check. Install Pillow, then: python inspect-alpha.py file.png"""
import hashlib
import json
import sys
from pathlib import Path
from PIL import Image

for argument in sys.argv[1:]:
    path = Path(argument)
    with Image.open(path) as image:
        counts = image.convert("RGBA").getchannel("A").histogram()
        print(json.dumps({
            "file": path.name, "size": image.size, "mode": image.mode,
            "bytes": path.stat().st_size,
            "sha256": hashlib.sha256(path.read_bytes()).hexdigest(),
            "transparent_pixels": counts[0], "partial_pixels": sum(counts[1:255]),
            "opaque_pixels": counts[255],
        }))
