# PDF书签合并工具 这是一个用于合并PDF书签文件的Windows桌面应用程序,基于C# WinForms开发。 ## 功能特性 - **自动提取书签**:从指定路径下的`FreePic2Pdf_bkmk`文件中提取书签内容 - **智能合并**:按文件名前缀自动分组合并(如"CH-875 1-3"和"CH-875 4-6"合并为"CH-875.txt") - **格式化输出**:按照指定格式输出书签内容 - **路径选择**:支持自定义选择PDF源文件夹和TXT输出文件夹 - **进度显示**:实时显示处理进度和日志信息 ## 输出格式 处理后的文件内容格式如下: ``` tableOfContents: 书签标题1----------页码1
书签标题2----------页码2
书签标题3----------页码3
subject: <> tableOfContents: 书签标题4----------页码4
书签标题5----------页码5
subject: ``` ## 编译要求 - .NET Framework 4.8 - Windows操作系统 - Visual Studio 2019+ 或 Visual Studio Build Tools ## 编译步骤 1. 安装.NET Framework 4.8 2. 使用Visual Studio打开`SlideCombine.csproj` 3. 选择`Release`配置 4. 按F6生成解决方案 或者使用命令行: ```bash msbuild SlideCombine.csproj /p:Configuration=Release ``` ## 使用方法 1. 运行`SlideCombine.exe` 2. 选择包含PDF文件夹的源路径 3. 选择TXT文件的输出路径 4. 点击"合并书签"按钮开始处理 5. 等待处理完成,查看结果 ## 文件夹结构示例 输入文件夹结构: ``` PDF文件夹/ ├── CH-875 1-3/ │ └── FreePic2Pdf_bkmk ├── CH-875 4-6/ │ └── FreePic2Pdf_bkmk └── CH-876 1-2/ └── FreePic2Pdf_bkmk ``` 输出结果: ``` TXT输出路径/ ├── CH-875.txt (合并了CH-875 1-3和CH-875 4-6) └── CH-876.txt (来自CH-876 1-2) ``` ## 支持的编码 程序自动检测文件编码: - 优先使用UTF-8 - 如果UTF-8失败,自动切换到GBK编码 ## 错误处理 - 自动检查路径有效性 - 提供详细的错误信息 - 支持批量处理,单个文件失败不影响其他文件 ## 技术架构 - `BookmarkExtractor.cs`: 书签提取逻辑 - `ContentFormatter.cs`: 内容格式化 - `FileMerger.cs`: 文件合并处理 - `Form1.cs`: 主界面和用户交互