PDF 生成模板编辑器
开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。
ComPDFKit Web SDK 的开源 Vue 3 UI 层。在浏览器中查看、批注、编辑和签署 PDF 文档——完全可定制。
ComPDFKit WebViewer UI 是位于 ComPDFKit Web SDK Core 引擎之上的开源 UI 层。它基于 Vue 3、Pinia 和 Vite 构建,提供了一个完整、响应式、可定制的浏览器端 PDF 文档处理界面。
本仓库包含默认 UI 的全部源码。你可以定制、扩展它,或将其作为构建自有 PDF 查看器界面的参考。
集成方页面
└─ webviewer.js(iframe 嵌入,packages/core/webviewer.js)
└─ Webview Vue 应用(packages/webview)
└─ Core 桥接层(packages/webview/src/core/)
└─ ComPDFKitViewer(packages/core) ← Web Worker + WASMCore 引擎(@compdfkit/core)是闭源的 WASM 二进制文件。此处文档化的 UI 层(@compdfkit/webview)是开源的。
pnpm install
pnpm dev # 开发服务器,访问 http://localhost:3032在你自己的页面中嵌入查看器:
import ComPDFKitViewer from '@compdfkit/core/webviewer';
ComPDFKitViewer.init(
{ path: '/lib', pdfUrl: '/files/sample.pdf', license: 'YOUR_LICENSE_KEY' },
document.getElementById('viewer')
).then(instance => {
const { UI, Core } = instance;
UI.setLanguage('zh-CN'); // 本地化
UI.setTheme('dark'); // 主题
UI.disableElements(['printButton', 'downloadButton']); // 隐藏工具栏按钮
});详见 快速开始。
src/core/ 门面。setHeaderItems、setToolbarGroup、工具栏分组。addPanel、setPanels、getPanels。openElement、closeElement、disableElements、enableElements。setTheme、setCustomStyle。setLanguage、addLanguage、支持的语言。addCustomModal。annotationPopup、textPopup、contentEditorPopup、cropPagePopup。setActiveTool、registerTool。packages/
├── core/ # 闭源引擎 → 构建到 webview/lib/
└── webview/ # 开源 UI 层(本文档)
└── src/
├── apis/ # 公共 API 接口(约 67 个模块 → window.instance.UI)
├── api_helpers/ # API 工具(封装 store、弹窗 API)
├── core/ # 指向引擎的无状态桥接层(约 120 个模块)
├── components/ # Vue UI 组件(200+ 个 .vue 文件)
├── stores/ # Pinia stores(viewer、document)
├── helpers/ # 工具函数(设备检测、i18n、弹窗定位等)
├── hooks/ # Vue 组合式函数
├── constants/ # dataElements、toolNames、panel 注册表
└── locales/ # i18n 翻译文件