mirror of
https://github.com/open-webui/open-webui
synced 2025-03-16 10:28:28 +00:00
Merge pull request #4257 from thearyadev/fix/pdf-gen-static-path
fix: pdf gen static path resolution
This commit is contained in:
commit
380cb93e46
@ -1,3 +1,6 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
import site
|
||||||
|
|
||||||
from fastapi import APIRouter, UploadFile, File, Response
|
from fastapi import APIRouter, UploadFile, File, Response
|
||||||
from fastapi import Depends, HTTPException, status
|
from fastapi import Depends, HTTPException, status
|
||||||
from starlette.responses import StreamingResponse, FileResponse
|
from starlette.responses import StreamingResponse, FileResponse
|
||||||
@ -64,8 +67,18 @@ async def download_chat_as_pdf(
|
|||||||
pdf = FPDF()
|
pdf = FPDF()
|
||||||
pdf.add_page()
|
pdf.add_page()
|
||||||
|
|
||||||
STATIC_DIR = "./static"
|
# When running in docker, workdir is /app/backend, so fonts is in /app/backend/static/fonts
|
||||||
FONTS_DIR = f"{STATIC_DIR}/fonts"
|
FONTS_DIR = Path("./static/fonts")
|
||||||
|
|
||||||
|
# Non Docker Installation
|
||||||
|
|
||||||
|
# When running using `pip install` the static directory is in the site packages.
|
||||||
|
if not FONTS_DIR.exists():
|
||||||
|
FONTS_DIR = Path(site.getsitepackages()[0]) / "static/fonts"
|
||||||
|
# When running using `pip install -e .` the static directory is in the site packages.
|
||||||
|
# This path only works if `open-webui serve` is run from the root of this project.
|
||||||
|
if not FONTS_DIR.exists():
|
||||||
|
FONTS_DIR = Path("./backend/static/fonts")
|
||||||
|
|
||||||
pdf.add_font("NotoSans", "", f"{FONTS_DIR}/NotoSans-Regular.ttf")
|
pdf.add_font("NotoSans", "", f"{FONTS_DIR}/NotoSans-Regular.ttf")
|
||||||
pdf.add_font("NotoSans", "b", f"{FONTS_DIR}/NotoSans-Bold.ttf")
|
pdf.add_font("NotoSans", "b", f"{FONTS_DIR}/NotoSans-Bold.ttf")
|
||||||
|
Loading…
Reference in New Issue
Block a user