Guides
概览与架构
ComPDFKit_Tools 是 ComPDF SDK 为 Android 平台提供的 UI 组件模块。该模块在核心库 compdfkit 和 UI 基础库 compdfkit-ui 之上,封装了完整的文档交互界面与业务逻辑,开发者可直接集成或二次开发。
模块定位
compdfkit ← 核心 PDF 引擎(渲染、解析、编辑)
compdfkit-ui ← 基础 UI 控件(CPDFReaderView 等)
ComPDFKit_Tools ← 业务 UI 组件(本模块)
PDFViewer ← 示例应用- compdfkit:提供底层 PDF 解析、渲染、注释、表单、签名等能力。
- compdfkit-ui:提供
CPDFReaderView、CPDFViewCtrl等基础视图控件。 - ComPDFKit_Tools:在以上两者基础上,提供开箱即用的完整文档界面,包括工具栏、属性面板、弹窗、配置系统等。
包结构
模块源码位于 com.compdfkit.tools 包下,按功能划分为以下子包:
| 包名 | 功能 | 核心类 |
|---|---|---|
common/ | 公共框架 | CPDFDocumentActivity、CPDFDocumentFragment、CPDFConfiguration、ContextMenu、Toolbar、Properties、工具类 |
annotation/ | 注释模块 | CAnnotationToolbar、注释列表、各注释类型属性编辑 Fragment |
viewer/ | 阅读模块 | 书签、大纲、阅读设置、搜索与替换、缩略图 |
forms/ | 表单模块 | CFormToolbar、各表单类型属性编辑 Fragment |
contenteditor/ | 内容编辑 | CEditToolbar、文本属性编辑、图片属性编辑 |
docseditor/ | 页面编辑 | 页面编辑面板、插入/删除/旋转/拖拽排序 |
security/ | 安全功能 | 文档加密对话框、水印编辑器 |
signature/ | 数字签名 | 签名工具栏、证书导入/创建、签名验证与信息 |
compress/ | PDF 压缩 | 压缩对话框 |
common 包详细结构
common/ 是整个模块的核心框架包,包含以下子模块:
入口类
CPDFDocumentActivity:开箱即用的 PDF 文档 Activity,支持通过 Intent 传递文件路径/Uri、密码、配置等参数。CPDFDocumentFragment:可嵌入任意 Activity 的 PDF 文档 Fragment,支持与宿主页面灵活交互。
配置系统(common/pdf/config/)
通过 JSON 文件驱动的配置系统,控制所有 UI 行为:
CPDFConfiguration:顶层配置类,聚合所有子配置。ModeConfig:模式配置(初始模式、可用模式列表、UI 可见性)。ToolbarConfig:工具栏配置(菜单项、自定义按钮)。AnnotationsConfig:注释配置(可用类型、工具、默认属性)。ContentEditorConfig:内容编辑配置。FormsConfig:表单配置。ReaderViewConfig:阅读视图配置(显示模式、主题、间距、缩放等)。GlobalConfig:全局配置(主题模式、保存行为、BOTA、搜索、水印等)。ContextMenuConfig:上下文菜单配置。
上下文菜单(common/contextmenu/)
为不同对象提供长按/选中菜单,包括 20+ 种菜单实现:Markup 注释、Shape 注释、FreeText、Ink、Stamp、Sound、Link、EditText、EditImage、EditPath、各类表单、长按空白、选中文本、搜索替换、截图等。
属性面板(common/views/pdfproperties/)
统一的属性编辑面板架构,通过 CStyleDialogFragment 展示,支持颜色、字体、透明度、线宽等属性编辑。
事件系统(common/utils/customevent/)
CPDFCustomEventCallbackHelper:自定义事件回调管理器。CPDFCustomEventType:事件类型枚举(工具栏点击、上下文菜单点击等)。CPDFCustomEventField:事件字段常量。
工具类(common/utils/)
文件操作、权限管理、图片处理、打印、线程池、动画等通用工具。
快速了解
| 如果你想… | 请参考 |
|---|---|
| 快速集成并显示 PDF | 集成指南 → 快速开始 |
| 了解配置系统 | 配置概述 |
| 自定义工具栏按钮 | 顶部工具栏 → 自定义菜单按钮 |
| 自定义注释/表单行为 | 注释模块 / 表单模块 |
| 监听用户操作 | 事件回调与监听 |
| 自定义应用主题 | 主题与样式 |