打印

插件信息

注册打印能力

当 Slides 编辑器需要打印预览或打印相关 facade API 时,使用 @univerjs-pro/slides-print。该包还提供 @univerjs-pro/slides-print/locale/*,不需要额外的 CSS 导入。

TypeScript
import { UniverSlidesPrintPlugin } from '@univerjs-pro/slides-print'import SlidesPrintEnUS from '@univerjs-pro/slides-print/locale/en-US'import '@univerjs-pro/slides-print/facade'univer.registerPlugin(UniverSlidesPrintPlugin)

依赖

打印插件需要在核心 Slides 模型之后注册:

TypeScript
univer.registerPlugin(UniverSlidesPlugin)univer.registerPlugin(UniverSlidesUIPlugin)univer.registerPlugin(UniverSlidesPrintPlugin)

浏览器编辑器还需要保持 快速开始 中的 render engine、UI、Docs、Drawing 和授权插件注册。

Facade API

导入 facade 入口后,FUniver 会增加 printSlidesAsync 方法:

TypeScript
import '@univerjs-pro/slides-print/facade'

打印当前激活演示文稿中的全部幻灯片:

TypeScript
const univerAPI = FUniver.newAPI(univer)await univerAPI.printSlidesAsync()

也可以使用从 1 开始的页码范围打印指定幻灯片:

TypeScript
await univerAPI.printSlidesAsync({  range: [    { from: 1, to: 3 },    { from: 6, to: 6 },  ],})

range 使用闭区间页码。不传时会打印全部幻灯片。重叠范围会被去重,并按照原始幻灯片顺序打印;超出 deck 的范围会裁剪到可用页码,起止顺序反转的无效范围会被忽略。

注意事项

打印输出依赖当前幻灯片快照、页面尺寸、drawing 元素,以及可选的表格或图表元素。如果你的 deck 可能包含表格或图表,请在打印前注册对应功能插件。

打印布局与预览

TypeScript
univerAPI.openSlidesPrintDialog({  layout: univerAPI.Enum.SlidePrintLayoutType.Handout,  slidesPerPage: 6,  handoutOrder: univerAPI.Enum.SlidePrintHandoutOrder.Horizontal,  frameSlides: true,  showSlideNumber: true,})

布局支持整页、讲义和备注页;还可设置 paperSizedirectionmarginmarginCustom

你觉得这篇文档如何?

© 2026 DreamNum Co., Ltd.