# DOCXviewer **控件功能**:用于在网页中嵌入并显示 `.docx` 文档内容,通过 Mammoth.js 将 Word 文档转换为 HTML 并渲染。 **类型**:普通控件(继承自容器控件 VBox) **父类控件**:`bricks.VBox` ## 初始化参数 | 参数名 | 类型 | 说明 | |-------|------|------| | `url` | String | 指向 .docx 文件的 URL 地址,将在 `on_parent` 事件触发时加载 | > ⚠️ 注意:需提前引入 Mammoth.js 库(如 CDN 资源)才能正常工作。 ## 主要事件 | 事件名 | 触发时机 | 回调参数 | 说明 | |--------|----------|---------|------| | `on_parent` | 控件被添加到父容器后触发 | - | 自动调用 `set_url(this.url)` 开始加载并渲染文档 | --- # EXCELviewer **控件功能**:用于查看 Excel 文件(`.xlsx` 或 `.xls`),支持多工作表切换展示表格数据。 **类型**:容器控件 **父类控件**:`bricks.VBox` ## 初始化参数 | 参数名 | 类型 | 说明 | |-------|------|------| | `url` | String | 指向 Excel 文件的 URL 地址,在 `on_parent` 时加载 | | `height` | String | 默认设置为 `"100%"`,确保高度占满父容器 | ## 主要事件 | 事件名 | 触发时机 | 回调参数 | 说明 | |--------|----------|---------|------| | `on_parent` | 控件挂载到父节点后 | - | 触发 `set_url(url)` 加载 Excel 数据 | | `click`(子 Text 控件) | 点击某个 sheet 标签时 | sheetname, widget | 切换并显示对应的工作表内容 | > ✅ 支持特性: > - 动态生成工作表标签栏(HBox + Text) > - 可滚动区域展示表格 HTML 内容(VScrollPanel) > - 当前选中标签高亮(CSS 类 `selected`) --- # PDFviewer **控件功能**:用于在页面中内嵌显示 PDF 文件,逐页渲染为 Canvas 图像。 **类型**:容器控件 **父类控件**:`bricks.VBox` ## 初始化参数 | 参数名 | 类型 | 说明 | |-------|------|------| | `url` | String | PDF 文件的 URL 地址,由 `set_url` 使用 | | `width` | String | 强制设为 `'100%'`,以适配父容器宽度 | ## 主要事件 | 事件名 | 触发时机 | 回调参数 | 说明 | |--------|----------|---------|------| | `on_parent` | 控件挂载完成后 | - | 调用 `set_url()` 启动 PDF 加载与渲染 | | (内部 Promise) | PDF 成功加载后 | pdf 对象 | 遍历所有页调用 `add_page_content(page)` | | (错误处理) | 加载失败时 | error | 输出 `'error'` 到控制台 | > ✅ 渲染细节: > - 使用 `pdfjsLib`(Mozilla PDF.js)解析和绘制 PDF > - 每页使用 `` 渲染,缩放比例固定为 `1.5` > - 页面之间插入 `Splitter` 分隔条(视觉或布局用途) > ⚠️ 注意:需确保全局已定义 `pdfjsLib` 并正确配置。