mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 20:42:30 +08:00
Refactor:Improve BytesIO usage for image2base64 (#9997)
### What problem does this PR solve? Improve BytesIO usage for image2base64 ### Type of change - [x] Refactoring
This commit is contained in:
@ -124,17 +124,19 @@ class Base(ABC):
|
|||||||
mime = "image/jpeg"
|
mime = "image/jpeg"
|
||||||
b64 = base64.b64encode(data).decode("utf-8")
|
b64 = base64.b64encode(data).decode("utf-8")
|
||||||
return f"data:{mime};base64,{b64}"
|
return f"data:{mime};base64,{b64}"
|
||||||
buffered = BytesIO()
|
with BytesIO() as buffered:
|
||||||
fmt = "JPEG"
|
fmt = "JPEG"
|
||||||
try:
|
try:
|
||||||
image.save(buffered, format="JPEG")
|
image.save(buffered, format="JPEG")
|
||||||
except Exception:
|
except Exception:
|
||||||
buffered = BytesIO() # reset buffer before saving PNG
|
# reset buffer before saving PNG
|
||||||
image.save(buffered, format="PNG")
|
buffered.seek(0)
|
||||||
fmt = "PNG"
|
buffered.truncate()
|
||||||
data = buffered.getvalue()
|
image.save(buffered, format="PNG")
|
||||||
b64 = base64.b64encode(data).decode("utf-8")
|
fmt = "PNG"
|
||||||
mime = f"image/{fmt.lower()}"
|
data = buffered.getvalue()
|
||||||
|
b64 = base64.b64encode(data).decode("utf-8")
|
||||||
|
mime = f"image/{fmt.lower()}"
|
||||||
return f"data:{mime};base64,{b64}"
|
return f"data:{mime};base64,{b64}"
|
||||||
|
|
||||||
def prompt(self, b64):
|
def prompt(self, b64):
|
||||||
|
|||||||
Reference in New Issue
Block a user