> **本文回答**：背景色用 `Engine.setBgc(grayValue)`，参数是灰度 0-255（0=深色主题默认色 `#212830`（不是纯黑），255=`#FFFFFF`=浅色主题默认，其他 n = `rgb(n,n,n)`）。背景影响实体颜色显示效果，调整后通常自动重绘。

## 一、最小用法

```js
Engine.setBgc(0);     // 深色主题默认 #212830（不是纯黑；要纯黑可用 setBgc(1) ≈ rgb(1,1,1)）
Engine.setBgc(255);   // 纯白（浅色主题默认）
Engine.setBgc(33);    // 深灰
Engine.setBgc(128);   // 中灰
```

MCP 参考：`vjcad/example/view/06background.js`；取值：`0=深色，255=浅色`。

| 灰度值 | 含义 |
|---|---|
| 0 | 特例：`Engine.DARK_BG_COLOR` = `#212830`（深色主题默认，源码 `Engine.setBgc(isDarkTheme ? 0 : 255)`） |
| 33 | 深灰 |
| 128 | 中灰 |
| 200 | 浅灰 |
| 255 | 特例：`Engine.LIGHT_BG_COLOR` = `#FFFFFF`（浅色主题默认，适合打印预览） |

## 二、与主题的关系

- `setBgc` 只控制画布背景；主题色板读写走 `Engine.getThemeColors() / Engine.setThemeColors(partial)`（另有 `isDarkTheme()`），详见 [ui/theme-statusbar](../ui/theme-statusbar.md)。

## 三、`setBgc(hexString)`?

上游文档某处示例出现过 hex 字符串写法，但 **`setBgc(grayValue: number)` 只接受 0-255 整数灰度**（源码签名明确；内部 `grayValue <= 127` 判定深/浅）。**不要传 hex 字符串**——会得到非预期结果。

## 反例

- 设置纯白背景 + 大量浅色实体：可读性差。
- 在不同时机连续调用 `setBgc`：等同于背景闪屏。
- 想 "保存背景到 DWG"：vjcad 的背景一般是渲染选项，**不是文档持久化数据**——建议在用户 settings 里保存，不要依赖文件保留。

## 参考（官方文档 MCP）

- 文档：`vjcad/doc/view/index.md`
- 示例：`vjcad/example/view/06background.js`
