新增能力:内置 4 套红头、3 套正式文档和 3 套标书主题,支持主题推荐页边距、页面装饰、页眉页脚和页码;增加结构化公文、项目报告及标书 Front Matter,内置 Fandol 中文字体、两份教程和 14 份主题示例。 桌面工作流:重组更多菜单,增加新建、保存、另存为快捷键和未保存确认;另存为后跟随新路径,主题示例自动切换主题,Desktop 发行包完整携带教程、示例与字体。 问题修复:修正红头标题居中与正式文档字体;围栏代码按正文宽度自动换行,长内容安全断行,至少两行即可在当前页分页,并统一保留 8px 左侧内容留白;Docker Web 镜像正确打包 samples。 兼容与部署:未声明主题推荐设置时继续使用 16mm 默认页边距;Web 隐藏不适用的另存为。正式镜像 yixiong/md-to-pdf:v0.5.1 内容 ID 为 sha256:72f519a69bfd6cb2f6df30c2be938e58ceb6f20e4748a32551874de3d436b276,Compose 健康运行。 验证结果:最终修复前 65 个测试文件、286 项测试通过,最终代码块与主题定向测试 27 项通过;全项目类型检查、生产构建和 git diff --check 通过。容器检出 14 套主题、17 份 Markdown,代码块回归 PDF 为 2 页且无越界。NSIS SHA-256 为 676CCE73D782B0B15AC6BC68F253CFBC4740383583E4DAA98F746EDF9999C5CC,ZIP SHA-256 为 82BF6ADF1200604F145CC86FA3ED193955CF6741EBEE3DF8953483515CFF621F。
377 lines
14 KiB
Markdown
377 lines
14 KiB
Markdown
---
|
||
title: 公文与正式文档主题使用教程
|
||
author: Markdown PDF 导出器
|
||
keywords: [公文, 红头文件, 正式文档, 标书, 教程]
|
||
---
|
||
|
||
# 公文与正式文档主题使用教程
|
||
|
||
本教程介绍政企红头、政企正式和标书主题的选择方法,以及如何通过文档
|
||
开头的 Front Matter YAML 生成红头、发文字号、签发人、简报刊头、项目
|
||
封面、投标封面和文末版记。
|
||
|
||
## 一、Front Matter 是什么
|
||
|
||
Front Matter 是 Markdown 文件最前面的 YAML 配置,必须由两行 `---`
|
||
包围。结束标记之后才开始写正文。
|
||
|
||
```yaml
|
||
---
|
||
title: 关于进一步规范项目管理工作的通知
|
||
author: 示例市人民政府办公室
|
||
subject: 项目管理工作通知
|
||
keywords: [公文, 通知, 项目管理]
|
||
document:
|
||
profile: official
|
||
issuer: 示例市人民政府办公室
|
||
number: 示例办发〔2026〕12号
|
||
date: 2026年7月29日
|
||
---
|
||
```
|
||
|
||
注意:
|
||
|
||
- YAML 使用空格缩进,不要使用 Tab;
|
||
- `document` 下的字段需要比 `document:` 多缩进两个空格;
|
||
- 日期建议写成明确的中文字符串,例如 `2026年7月29日`;
|
||
- 教程或主题示例从“更多”菜单打开时会自动切换主题;
|
||
- 普通 Markdown 文件中的 Front Matter 只描述文档结构,不会自动选择主题。
|
||
|
||
## 二、选择合适的主题
|
||
|
||
### 政企红头
|
||
|
||
- **政企红头·国家标准**:适合通知、决定、请示、报告等较完整的党政机关公文结构。
|
||
- **政企红头·信函格式**:适合函、征求意见、答复等信函式公文。
|
||
- **政企红头·企业简版**:适合企业内部通知、制度和管理文件。
|
||
- **政企红头·工作简报**:适合工作动态、专题简报和阶段性通报。
|
||
|
||
### 政企正式
|
||
|
||
- **政企正式·规章制度**:适合制度、办法、细则和管理规范。
|
||
- **政企正式·工作报告**:适合总结、汇报、调研和会议材料。
|
||
- **政企正式·可研报告**:适合可行性研究、项目建议书和建设方案。
|
||
|
||
### 标书正式
|
||
|
||
- **标书正式·经典版**:适合常规投标文件和技术方案。
|
||
- **标书正式·商务蓝**:适合企业方案、汇报材料和商务投标。
|
||
- **标书正式·暗标版**:适合需要弱化投标人识别信息的技术暗标。
|
||
|
||
## 三、通用元数据字段
|
||
|
||
这些字段位于 YAML 最外层,可用于所有主题和 profile。
|
||
|
||
| 字段 | 类型 | 功能 | 示例 |
|
||
| --- | --- | --- | --- |
|
||
| `title` | 字符串 | 文档标题;结构化主题会将其用于红头标题或封面标题 | `title: 关于开展专项检查的通知` |
|
||
| `author` | 字符串 | 作者或编制单位,同时可写入 PDF 作者元数据 | `author: 示例市人民政府办公室` |
|
||
| `subject` | 字符串 | 文档主题,可写入 PDF 主题元数据 | `subject: 专项检查工作通知` |
|
||
| `keywords` | 字符串数组 | 文档关键词,可写入 PDF 关键词元数据 | `keywords: [公文, 通知, 检查]` |
|
||
| `document` | 对象 | 启用并配置结构化公文、简报、项目报告或标书 | `document: { profile: official }` |
|
||
|
||
`title` 是结构化主题最重要的通用字段。使用 `official`、`project-report`
|
||
或 `tender` 时,正文通常不再重复书写同名一级标题。
|
||
|
||
字段路径也可以用点号快速定位,例如 `document.profile: official` 表示
|
||
YAML 中 `document` 对象下的 `profile: official`,点号路径仅用于说明,
|
||
不能直接照此写入 YAML。
|
||
|
||
## 四、红头公文:`official`
|
||
|
||
### 最小配置
|
||
|
||
最小配置适合企业简版红头或暂不需要文号、签发人的文件:
|
||
|
||
```yaml
|
||
---
|
||
title: 关于调整项目评审流程的通知
|
||
document:
|
||
profile: official
|
||
issuer: 示例科技集团有限公司
|
||
date: 2026年7月29日
|
||
---
|
||
```
|
||
|
||
### 完整配置
|
||
|
||
```yaml
|
||
---
|
||
title: 关于进一步规范项目管理工作的通知
|
||
author: 示例市人民政府办公室
|
||
subject: 项目管理工作通知
|
||
keywords: [公文, 通知, 项目管理]
|
||
document:
|
||
profile: official
|
||
issuer: 示例市人民政府办公室
|
||
number: 示例办发〔2026〕12号
|
||
secrecy: 秘密
|
||
urgency: 加急
|
||
signatory: 张三
|
||
date: 2026年7月29日
|
||
copyTo:
|
||
- 市发展改革委
|
||
- 市财政局
|
||
- 市审计局
|
||
printingOffice: 示例市人民政府办公室
|
||
---
|
||
```
|
||
|
||
### `official` 字段表
|
||
|
||
| 字段 | 类型 | 必填 | 功能 | 示例 |
|
||
| --- | --- | --- | --- | --- |
|
||
| `profile` | 固定字符串 | 是 | 启用红头公文结构,必须为 `official` | `profile: official` |
|
||
| `issuer` | 字符串 | 否 | 红头发文机关名称,并用于文末落款机关 | `issuer: 示例市人民政府办公室` |
|
||
| `number` | 字符串 | 否 | 发文字号 | `number: 示例办发〔2026〕12号` |
|
||
| `secrecy` | 字符串 | 否 | 密级或保密期限 | `secrecy: 秘密` |
|
||
| `urgency` | 字符串 | 否 | 紧急程度 | `urgency: 加急` |
|
||
| `signatory` | 字符串 | 否 | 签发人姓名 | `signatory: 张三` |
|
||
| `date` | 字符串 | 否 | 成文日期,并用于版记日期 | `date: 2026年7月29日` |
|
||
| `copyTo` | 字符串或数组 | 否 | 文末抄送机关,最多 30 项 | `copyTo: [市财政局, 市审计局]` |
|
||
| `printingOffice` | 字符串 | 否 | 文末版记中的印发机关 | `printingOffice: 市政府办公室` |
|
||
|
||
`copyTo` 支持两种写法:
|
||
|
||
```yaml
|
||
document:
|
||
profile: official
|
||
copyTo: 市发展改革委, 市财政局, 市审计局
|
||
```
|
||
|
||
```yaml
|
||
document:
|
||
profile: official
|
||
copyTo:
|
||
- 市发展改革委
|
||
- 市财政局
|
||
- 市审计局
|
||
```
|
||
|
||
抄送信息不需要手工写在正文末尾,结构化主题会自动生成;印发机关和日期
|
||
也会进入标准化版记区域。
|
||
|
||
## 五、工作简报:`briefing`
|
||
|
||
工作简报使用独立的刊头、期号、编发单位和报送说明。
|
||
|
||
```yaml
|
||
---
|
||
title: 重点项目建设工作推进情况
|
||
author: 示例市重点项目办公室
|
||
subject: 重点项目工作简报
|
||
keywords: [简报, 项目建设, 工作推进]
|
||
document:
|
||
profile: briefing
|
||
masthead: 工作简报
|
||
issue: 2026年第12期
|
||
publisher: 示例市重点项目办公室
|
||
signatory: 王五
|
||
date: 2026年7月29日
|
||
contact: "报送:市政府领导;发送:各区人民政府、市直有关单位。编辑:综合协调处,电话:0000-12345678。"
|
||
---
|
||
```
|
||
|
||
| 字段 | 类型 | 必填 | 功能 | 示例 |
|
||
| --- | --- | --- | --- | --- |
|
||
| `profile` | 固定字符串 | 是 | 启用简报结构,必须为 `briefing` | `profile: briefing` |
|
||
| `masthead` | 字符串 | 否 | 简报顶部刊头名称 | `masthead: 工作简报` |
|
||
| `issue` | 字符串 | 否 | 期号 | `issue: 2026年第12期` |
|
||
| `publisher` | 字符串 | 否 | 编发单位 | `publisher: 市重点项目办公室` |
|
||
| `signatory` | 字符串 | 否 | 签发或审核人员 | `signatory: 王五` |
|
||
| `date` | 字符串 | 否 | 编发日期 | `date: 2026年7月29日` |
|
||
| `contact` | 字符串 | 否 | 报送、发送、编辑及联系方式说明,最长 500 字符 | `contact: "报送:市政府领导;编辑:综合处。"` |
|
||
|
||
## 六、可研与项目报告:`project-report`
|
||
|
||
`project-report` 会生成项目报告封面,适合可行性研究报告、项目建议书和
|
||
建设方案。
|
||
|
||
```yaml
|
||
---
|
||
title: 可行性研究报告
|
||
author: 示例工程咨询有限公司
|
||
subject: 智慧园区建设项目可行性研究
|
||
keywords: [可行性研究, 项目建设, 投资估算]
|
||
document:
|
||
profile: project-report
|
||
projectName: 智慧园区一体化平台建设项目
|
||
documentType: 可行性研究报告
|
||
owner: 示例产业园区管理委员会
|
||
preparedBy: 示例工程咨询有限公司
|
||
version: 送审稿 V1.0
|
||
date: 2026年7月
|
||
---
|
||
```
|
||
|
||
| 字段 | 类型 | 必填 | 功能 | 示例 |
|
||
| --- | --- | --- | --- | --- |
|
||
| `profile` | 固定字符串 | 是 | 启用项目报告封面,必须为 `project-report` | `profile: project-report` |
|
||
| `projectName` | 字符串 | 否 | 项目完整名称 | `projectName: 智慧园区一体化平台建设项目` |
|
||
| `documentType` | 字符串 | 否 | 报告类型 | `documentType: 可行性研究报告` |
|
||
| `owner` | 字符串 | 否 | 建设、委托或申报单位 | `owner: 示例产业园区管理委员会` |
|
||
| `preparedBy` | 字符串 | 否 | 编制单位 | `preparedBy: 示例工程咨询有限公司` |
|
||
| `version` | 字符串 | 否 | 文件版本或送审状态 | `version: 送审稿 V1.0` |
|
||
| `date` | 字符串 | 否 | 编制日期 | `date: 2026年7月` |
|
||
|
||
封面之后直接从第一章开始书写,例如:
|
||
|
||
```markdown
|
||
# 第一章 总论
|
||
|
||
## 一、项目概况
|
||
|
||
本项目拟建设统一的园区管理、企业服务和运行监测平台。
|
||
```
|
||
|
||
## 七、投标文件:`tender`
|
||
|
||
### 常规投标文件
|
||
|
||
```yaml
|
||
---
|
||
title: 投标文件
|
||
author: 示例科技有限公司
|
||
subject: 数据中心建设项目投标文件
|
||
keywords: [投标文件, 技术方案, 项目实施]
|
||
document:
|
||
profile: tender
|
||
copyMark: 正本
|
||
projectName: 数据中心基础设施建设项目
|
||
projectNumber: ZB-2026-001
|
||
volume: 技术及商务文件
|
||
bidder: 示例科技有限公司
|
||
representative: 李四
|
||
date: 2026年7月29日
|
||
---
|
||
```
|
||
|
||
### 技术暗标
|
||
|
||
暗标通常省略投标人和代表信息,具体要求应以招标文件为准:
|
||
|
||
```yaml
|
||
---
|
||
title: 技术文件
|
||
subject: 城市运行管理平台技术暗标
|
||
keywords: [技术暗标, 技术方案, 项目实施]
|
||
document:
|
||
profile: tender
|
||
copyMark: 技术暗标
|
||
projectName: 城市运行管理平台建设项目
|
||
projectNumber: JS-2026-009
|
||
volume: 技术文件
|
||
date: 2026年7月
|
||
---
|
||
```
|
||
|
||
### `tender` 字段表
|
||
|
||
| 字段 | 类型 | 必填 | 功能 | 示例 |
|
||
| --- | --- | --- | --- | --- |
|
||
| `profile` | 固定字符串 | 是 | 启用标书封面,必须为 `tender` | `profile: tender` |
|
||
| `copyMark` | 字符串 | 否 | 正本、副本或技术暗标标记 | `copyMark: 正本` |
|
||
| `projectName` | 字符串 | 否 | 招标或采购项目名称 | `projectName: 数据中心基础设施建设项目` |
|
||
| `projectNumber` | 字符串 | 否 | 项目或招标编号 | `projectNumber: ZB-2026-001` |
|
||
| `volume` | 字符串 | 否 | 分册名称 | `volume: 技术及商务文件` |
|
||
| `bidder` | 字符串 | 否 | 投标人名称 | `bidder: 示例科技有限公司` |
|
||
| `representative` | 字符串 | 否 | 法定代表人或授权代表 | `representative: 李四` |
|
||
| `date` | 字符串 | 否 | 投标或编制日期 | `date: 2026年7月29日` |
|
||
|
||
## 八、普通正式文档
|
||
|
||
规章制度和工作报告不一定需要结构化封面。只使用通用元数据,并在正文中
|
||
正常书写一级标题即可:
|
||
|
||
```yaml
|
||
---
|
||
title: 信息系统项目管理办法
|
||
author: 示例集团有限公司
|
||
subject: 信息系统项目管理制度
|
||
keywords: [规章制度, 项目管理, 信息系统]
|
||
---
|
||
|
||
# 信息系统项目管理办法
|
||
|
||
## 第一章 总则
|
||
```
|
||
|
||
这种写法适用于“政企正式·规章制度”和“政企正式·工作报告”。不要添加
|
||
不存在的 `document.profile`,否则文档会显示配置错误。
|
||
|
||
## 九、正文写法
|
||
|
||
红头公文的 Front Matter 结束后直接书写主送机关和正文,不要再次添加
|
||
与 `title` 相同的一级标题,否则会重复显示公文标题。
|
||
|
||
```markdown
|
||
各区人民政府,市政府各部门、各直属机构:
|
||
|
||
为进一步加强全市重点项目全过程管理,现将有关事项通知如下。
|
||
|
||
## 一、完善项目分级管理机制
|
||
|
||
各单位应当按照投资规模、建设周期和社会影响建立动态管理台账。
|
||
|
||
## 二、规范项目建设过程
|
||
|
||
(一)严格执行项目建设程序。
|
||
|
||
(二)建立月度调度机制。
|
||
```
|
||
|
||
## 十、页边距、页眉页脚和页码
|
||
|
||
这些项目不属于 Front Matter 的 `document` 字段,而由主题推荐值和
|
||
“导出设置”控制:
|
||
|
||
| 配置 | 默认行为 | 自定义方式 |
|
||
| --- | --- | --- |
|
||
| 页边距 | 主题有推荐值时跟随主题,否则四边 `16mm` | 导出设置 → 页边距 → 自定义 |
|
||
| 页眉 | 正式主题可提供推荐内容和字体 | 导出设置 → 页眉 |
|
||
| 页脚 | 正式主题可提供推荐内容和字体 | 导出设置 → 页脚 |
|
||
| 页码 | 红头主题可推荐 `— 1 —` 等公文式页码 | 导出设置 → 页码 |
|
||
| 纸张与方向 | 默认 A4 纵向 | 导出设置 → 纸张 |
|
||
|
||
- 国家标准红头主题使用公文式页码;
|
||
- 双面文档页码可按奇偶页放在外侧;
|
||
- 信函格式首页可以不显示页码;
|
||
- 切换为“自定义”后,导出设置会覆盖主题推荐值。
|
||
|
||
不要在 Front Matter 中填写 `margin`、`header`、`footer` 或 `pageNumber`
|
||
并期待其生效;当前版本不把这些字段作为文档结构协议解析。
|
||
|
||
## 十一、字体说明
|
||
|
||
正式主题内置可再分发的 Fandol 中文字体资源,以减少不同电脑之间的显示
|
||
差异:
|
||
|
||
- 正文以宋体风格为主;
|
||
- 一级结构标题使用黑体风格;
|
||
- 二级结构标题使用楷体风格;
|
||
- 红头机关名称使用项目内置的小标宋近似字体方案;
|
||
- 页眉页脚使用正式文档主题规定的对应字体。
|
||
|
||
内置字体用于稳定排版效果,但不声称等同于需要单独授权的商业字体。对
|
||
字体有强制采购或归档要求的单位,应按本单位规定配置经授权字体。
|
||
|
||
## 十二、常见错误
|
||
|
||
| 现象 | 原因 | 处理方法 |
|
||
| --- | --- | --- |
|
||
| YAML 被显示成正文 | 文件开头不是 `---`,或缺少结束的 `---` | 确保 Front Matter 位于文件第一行 |
|
||
| 提示未知字段 | `document` 使用严格字段校验 | 对照对应 profile 的字段表删除拼写错误或多余字段 |
|
||
| 标题出现两次 | `title` 已生成结构标题,正文又写了同名 `#` 标题 | 删除正文中重复的一级标题 |
|
||
| 抄送未显示 | `copyTo` 写在了 `document` 外层 | 将其缩进到 `document:` 下面 |
|
||
| 主题没有自动切换 | 普通文件不能通过 Front Matter 选主题 | 手动选择主题,或从“更多 → 主题示例”打开 |
|
||
| 页边距字段无效 | 页边距不属于文档 profile | 在导出设置中选择“跟随主题”或“自定义” |
|
||
|
||
## 十三、导出前检查
|
||
|
||
1. 确认标题、发文机关、发文字号和日期无误。
|
||
2. 检查主送机关、落款和抄送信息是否完整。
|
||
3. 暗标文件必须再次对照招标要求检查身份信息和版式限制。
|
||
4. 使用“精确”预览核对页码、页边距和分页边界。
|
||
5. 检查表格、图片、图表和附件说明是否跨页异常。
|
||
6. 最终 PDF 应保持文字可搜索,并在归档前完成内容复核。
|