Files
ttstd-3d-director/src/editor/io/captureBridge.ts
LKH 3b053c714c init
all

视频

视频

视频

视频

视频

init
2026-07-29 09:17:00 +08:00

30 lines
879 B
TypeScript

import type { ScreenshotResult } from "./screenshotExport";
export type ViewportCapturePreset = "current" | "four" | "twelve";
export interface ViewportCaptureRequest {
preset: ViewportCapturePreset;
source: "capture-panel" | "camera-panel";
cameraId?: string | null;
}
export type ViewportCaptureHandler = (request: ViewportCaptureRequest) => Promise<ScreenshotResult[]>;
let viewportCaptureHandler: ViewportCaptureHandler | null = null;
export function setViewportCaptureHandler(handler: ViewportCaptureHandler) {
viewportCaptureHandler = handler;
}
export function clearViewportCaptureHandler() {
viewportCaptureHandler = null;
}
export async function requestViewportCapture(request: ViewportCaptureRequest) {
if (!viewportCaptureHandler) {
throw new Error("Viewport capture handler is not registered");
}
return viewportCaptureHandler(request);
}