(self, image_data, sid=None)
| 1275 | return message |
| 1276 | |
| 1277 | async def send_image(self, image_data, sid=None): |
| 1278 | image_type = image_data[0] |
| 1279 | image = image_data[1] |
| 1280 | max_size = image_data[2] |
| 1281 | if max_size is not None: |
| 1282 | if hasattr(Image, 'Resampling'): |
| 1283 | resampling = Image.Resampling.BILINEAR |
| 1284 | else: |
| 1285 | resampling = Image.Resampling.LANCZOS |
| 1286 | |
| 1287 | image = ImageOps.contain(image, (max_size, max_size), resampling) |
| 1288 | type_num = 1 |
| 1289 | if image_type == "JPEG": |
| 1290 | type_num = 1 |
| 1291 | elif image_type == "PNG": |
| 1292 | type_num = 2 |
| 1293 | |
| 1294 | bytesIO = BytesIO() |
| 1295 | header = struct.pack(">I", type_num) |
| 1296 | bytesIO.write(header) |
| 1297 | image.save(bytesIO, format=image_type, quality=95, compress_level=1) |
| 1298 | preview_bytes = bytesIO.getvalue() |
| 1299 | await self.send_bytes(BinaryEventTypes.PREVIEW_IMAGE, preview_bytes, sid=sid) |
| 1300 | |
| 1301 | async def send_image_with_metadata(self, image_data, metadata=None, sid=None): |
| 1302 | image_type = image_data[0] |
no test coverage detected