# ClassicWordTable · Word 表格控件

在 Word 表格上添加工具栏、功能区和上下文菜单。表格结构和命令归 WordTable；三个界面开关互相独立。

在 Word 表格上添加工具栏、功能区和上下文菜单。表格结构和命令归 WordTable；三个界面开关互相独立。

`@quirekit/classic-docx` · **Commercial**

## 编辑器适用范围
层次：**Classic 产品适配**
| 编辑器 | 状态 | 所需装配与边界 |
| --- | --- | --- |
| Classic | 直接支持 | [createClassicWordPreset](/plugins/reference/create-classic-word-preset) — 使用 createClassicWordPreset 装配 Word 模型、布局与产品适配；具体控件、开关、宿主服务及文件支持以本页说明为准。批注、修订和内容控件的完整创作界面另需 Pro。 |
| Block | 未支持 | Block 不消费 Classic 产品 contribution、plugins 或分页装配。请使用共享能力和 Block 适配入口，不能直接复制此入口的 Classic 配置。 |

“直接支持”指已有上述产品装配；具体交互、宿主服务和格式支持仍有各自条件。[状态与接入规则](/plugins/compatibility)。许可独立显示。

## 接入

当前 `@quirekit/classic-docx` 的包元数据标为 private。本站使用工作区源码；外部项目需先取得对应分发包，不能把下面的公开导出理解为已经能从公共 npm 安装。

此入口属于商业组件。使用前先取得相应分发与授权；安装命令仅适用于已配置该分发源的项目。

先使用 [Word 预设](/plugins/reference/create-classic-word-preset)。这里的单项适配器用于自定义预设或替换子项；不能向已有装配再追加同名扩展。

```ts
import { ClassicWordTable } from '@quirekit/classic-docx'

const table = ClassicWordTable.configure({ ribbon: true, toolbar: true, contextMenu: false })
```

安装时按包声明选择兼容版本，外部可用版本以分发源为准。本站使用工作区 Alpha；许可标签来自入口所属包，使用条件见[支持与许可](/support)。

## 按编辑器接入

以下片段沿用已挂载的宿主元素 `element`，宿主负责容器尺寸与保存；退出页面时调用 `instance.destroy()`。已有预设装配的能力不要再重复追加；需要宿主端口的入口应先完成下方配置。

### Classic

使用 createClassicWordPreset 装配 Word 模型、布局与产品适配；具体控件、开关、宿主服务及文件支持以本页说明为准。批注、修订和内容控件的完整创作界面另需 Pro。

[createClassicWordPreset](/plugins/reference/create-classic-word-preset)

```ts
import { createClassicEditor } from '@quirekit/classic-editor'
import '@quirekit/classic-editor/styles.css'
import { createClassicWordDefaultDocument, createClassicWordPreset } from '@quirekit/classic-docx'
import '@quirekit/classic-docx/styles.css'

const instance = createClassicEditor({
  element,
  preset: createClassicWordPreset(),
  document: createClassicWordDefaultDocument(),
})
```

### Block

Block 不消费 Classic 产品 contribution、plugins 或分页装配。请使用共享能力和 Block 适配入口，不能直接复制此入口的 Classic 配置。

## 配置

下面是扩展自身的默认选项。预设可以覆盖这些值；它们不等于当前文档属性。配置方法见[配置插件](/plugins/configuration)。

### toolbar

是否安装该领域的产品工具栏。

类型：`boolean`

默认：`false`

### ribbon

是否向 Classic 功能区贡献控件。直接使用适配器与由预设装配时的值可能不同。

类型：`boolean`

默认：`false`

### contextMenu

是否贡献上下文菜单入口。

类型：`boolean`

默认：`false`

## 命令与运行方式

以下命令由此扩展直接提供，均在当前 Editor 上调用。命令是否可用由已安装 schema、当前选区与保护策略决定；可以先用 `editor.can()` 查询。

| 命令 | 参数签名 |
| --- | --- |
| `addWordTableRow` | `addWordTableRow(options: AddWordTableRowCommandOptions)` |
| `addWordTableRows` | `addWordTableRows(options: AddWordTableRowsCommandOptions)` |
| `addWordTableColumns` | `addWordTableColumns(options: AddWordTableColumnsCommandOptions)` |
| `deleteWordTableRows` | `deleteWordTableRows(options?: SelectionBackedCommandOptions<DeleteWordTableRowsCommandOptions, "from" \| "to"> \| undefined)` |
| `addWordTableColumn` | `addWordTableColumn(options: AddWordTableColumnCommandOptions)` |
| `deleteWordTableColumns` | `deleteWordTableColumns(options?: SelectionBackedCommandOptions<DeleteWordTableColumnsCommandOptions, "from" \| "to"> \| undefined)` |
| `mergeWordTableCells` | `mergeWordTableCells(options?: SelectionBackedCommandOptions<MergeWordTableCellsCommandOptions, TableRectCoordinate> \| undefined)` |
| `splitWordTableCell` | `splitWordTableCell(options?: SelectionBackedCommandOptions<SplitWordTableCellCommandOptions, "rowIndex" \| "columnIndex"> \| undefined)` |
| `setWordTableAttrs` | `setWordTableAttrs(options: SetWordTableAttrsCommandOptions)` |
| `setWordTableColumnWidth` | `setWordTableColumnWidth(options: SetWordTableColumnWidthCommandOptions)` |
| `setWordTableRowHeight` | `setWordTableRowHeight(options: SetWordTableRowHeightCommandOptions)` |
| `distributeWordTableColumns` | `distributeWordTableColumns(options?: SelectionBackedCommandOptions<DistributeWordTableColumnsCommandOptions, "from" \| "to"> \| undefined)` |
| `distributeWordTableRows` | `distributeWordTableRows(options?: SelectionBackedCommandOptions<DistributeWordTableRowsCommandOptions, "from" \| "to"> \| undefined)` |
| `setWordTableCellMargin` | `setWordTableCellMargin(options: SelectionBackedCommandOptions<SetWordTableCellMarginCommandOptions, TableRectCoordinate>)` |
| `setWordTableCellAttrs` | `setWordTableCellAttrs(options: SelectionBackedCommandOptions<SetWordTableCellAttrsCommandOptions, TableRectCoordinate>)` |
| `setWordTableRowAttrs` | `setWordTableRowAttrs(options: SetWordTableRowAttrsCommandOptions)` |
| `setWordTableCellBorders` | `setWordTableCellBorders(options: SelectionBackedCommandOptions<SetWordTableCellBordersCommandOptions, TableRectCoordinate>)` |
| `setWordTableCellBorderFormat` | `setWordTableCellBorderFormat(options: SelectionBackedCommandOptions<SetWordTableCellBorderFormatCommandOptions, TableRectCoordinate>)` |
| `clearWordTableCellFormatting` | `clearWordTableCellFormatting(options?: SelectionBackedCommandOptions<ClearWordTableCellFormattingCommandOptions, TableRectCoordinate> \| undefined)` |

这里只展示参数签名。接界面时见[命令与控件](/build/commands)，正文变更继续经过同一事务与历史。

## 下一步

返回[全部插件](/plugins)，或阅读[配置插件](/plugins/configuration)区分配置、文档属性与命令。

继续[Classic 快速接入](/classic/quick-start)和[配置与生命周期](/classic/configuration)。开发自己的产品界面与服务时，见[产品插件开发](/build/product-plugin)。
