feat(资源管理): 修复字体预览与资源定位
build.yaml / build (push) Successful in 54s

This commit is contained in:
xiaoqidun committed 2026-10-13 19:17:53 +08:00
1 parent f5463b9479
commit 6f9bebae26
4 files changed
+111 -28

No files matched your search

+15
View File
@@ -236,6 +236,7 @@ func RunWASM() {
registerCallback("ofdgoResources", documentResources)
registerCallback("ofdgoResourceTargets", resourceTargets)
registerCallback("ofdgoResourceLocations", resourceLocations)
registerCallback("ofdgoFontPreview", fontPreview)
registerCallback("ofdgoChangeResource", changeResource)
registerAsyncCallback("ofdgoExportResource", exportResource)
registerCallback("ofdgoImages", documentImages)
@@ -841,6 +842,20 @@ func resourceLocations(args []js.Value) (any, error) {
return currentSession.Renderer.ResourceLocations(context.Background(), args[0].String(), args[1].String(), args[2].Int())
}
// fontPreview 使用当前文档和版本的字形轮廓生成独立预览
// 入参: args 字体资源标识
// 返回: any SVG数据, error 字体或绘制错误
func fontPreview(args []js.Value) (any, error) {
if currentSession == nil || len(args) != 1 {
return nil, fmt.Errorf("ofd document is not opened")
}
var output bytes.Buffer
if err := currentSession.Renderer.RenderFontPreview(context.Background(), args[0].String(), &output); err != nil {
return nil, err
}
return successResult(map[string]any{"bytes": bytesToJS(output.Bytes())}), nil
}
// changeResource 调用库层资源编辑,浏览器不改写资源声明和包路径
// 入参: args 操作、类型、标识、格式、数据、页码和图元标识
// 返回: any 编辑状态, error 资源操作错误