import { auth } from "@/app/(auth)/auth"; import { captionFont } from "@/lib/video-canvas/smart-edit/fonts"; import { captionFontFile } from "@/lib/video-canvas/smart-edit/font-files"; import { readFile } from "node:fs/promises"; export const runtime = "nodejs"; export const maxDuration = 180; export async function GET(_request: Request, { params }: { params: Promise<{ id: string }> }) { if (!(await auth())?.user?.id) return Response.json({ error: "未登录" }, { status: 401 }); const { id } = await params; if (!captionFont(id)) return Response.json({ error: "字体不存在" }, { status: 404 }); try { const data = await readFile(await captionFontFile(id)); return new Response(new Uint8Array(data), { headers: { "Content-Type": "font/ttf", "Cache-Control": "private, max-age=31536000, immutable", }, }); } catch { return Response.json({ error: "字体加载失败,请检查字体服务配置后重试" }, { status: 503 }); } }