img convertir bytes python python-imaging-library

python - bytes - ¿Cómo convertir el objeto PIL Image.image a una cadena base64?



python get image base64 (1)

Esta pregunta ya tiene una respuesta aquí:

Estoy tratando de manipular una imagen codificada en base64 de tal manera que gire en ángulo 90. Después de esta manipulación, quiero volver a convertirla en la cadena base64. Pero lamentablemente no ha podido lograr esto todavía.

Esto es lo que he hecho hasta ahora:

image_string = StringIO(base64.b64decode(base64_string_here)) image = Image.open(image_string) angle = 90 rotated_image = image.rotate( angle, expand=1 )

Kindy me ayudó a convertir este rotated_image en una cadena base64.

Aquí está el dir() de rotated_image:

[''_Image__transformer'', ''__doc__'', ''__getattr__'', ''__init__'', ''__module__'', ''__repr__'', ''_copy'', ''_dump'', ''_expand'', ''_makeself'', ''_new'', ''_new'', '' convert '','' copy '','' crop '','' draft '','' filter '','' format '','' format_description '','' fromstring '','' getbands '','' getbbox '','' getcolors '','' getdata '','' getextrema '' , ''getim'', ''getpalette'', ''getpixel'', ''getprojection'', ''histogram'', ''im'', ''info'', ''load'', ''mode'', ''offset'', ''palette'', ''paste'', '' point '','' putalpha '','' putdata '','' putpalette '','' putpixel '','' quantize '','' readonly '','' resize '','' rotate '','' save '','' seek '','' show '','' size '' , ''split'', ''tell'', ''thumbnail'', ''tobitmap'', ''tostring'', ''transform'', ''transpose'', ''Verify'']


Python 3

import base64 from io import BytesIO buffered = BytesIO() image.save(buffered, format="JPEG") img_str = base64.b64encode(buffered.getvalue())

Python 2

import base64 import cStringIO buffer = cStringIO.StringIO() image.save(buffer, format="JPEG") img_str = base64.b64encode(buffer.getvalue())