Coverage for src/blob_dict/blob/image.py: 0%
15 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-09 03:05 -0700
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-09 03:05 -0700
1from __future__ import annotations
3from typing import override
5from extratools_image import bytes_to_image, image_to_bytes
6from PIL.Image import Image
8from . import BytesBlob
11class ImageBlob(BytesBlob):
12 def __init__(self, blob: bytes | Image) -> None:
13 if isinstance(blob, Image):
14 blob = image_to_bytes(blob)
16 super().__init__(blob)
18 def as_image(self) -> Image:
19 return bytes_to_image(self._blob_bytes)
21 @override
22 def __repr__(self) -> str:
23 return f"{self.__class__.__name__}(...)"