# 软件著作权程序鉴别材料生成器 **Repository Path**: Snake-Konginchrist/software-copyright-code-generator ## Basic Information - **Project Name**: 软件著作权程序鉴别材料生成器 - **Description**: 软著源代码生成器 - 基于Qt6开发的桌面应用程序,专为软件著作权申请设计。自动扫描项目源代码文件,智能生成符合软著申请要求的前30页和后30页代码文档。支持多种编程语言文件格式,可自定义每页行数、字体大小和页面设置。提供Word和PDF两种输出格式,操作简单直观,大幅提升软著申请效率。适用于Windows、macOS和Linux平台,是开发者申请软件著作权的得力助手。 - **Primary Language**: Unknown - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-10 - **Last Updated**: 2025-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 软著源代码生成器 ## 项目简介 软著源代码生成器是一个基于Qt框架开发的桌面应用程序,用于帮助开发者快速生成符合软件著作权申请要求的源代码文档。该工具可以自动扫描项目文件,并生成前30页和后30页的代码文档,满足软件著作权申请的材料要求。 ## 功能特点 - **自动扫描项目文件**:根据指定的文件后缀自动扫描项目中的源代码文件 - **灵活的文件筛选**:支持自定义文件后缀,如 cpp, h, hpp, c, cc 等 - **代码文档生成**:自动生成符合要求的前30页和后30页源代码文档 - **多种文档格式**:支持生成Word文档(.docx)和PDF文档(.pdf) - **自定义输出路径**:可指定文档保存位置,默认保存在程序运行目录 - **可调整每页行数**:支持自定义每页代码行数(10-100行,默认50行) - **进度显示**:实时显示生成进度,让用户了解处理状态 - **友好的用户界面**:简洁直观的界面设计,操作简单 ## 系统要求 - 操作系统:Windows 10/11, macOS 10.14+, Linux (Ubuntu 18.04+) - Qt版本:Qt 6.0 或更高版本 - 编译器:支持C++17标准的编译器 - CMake:3.16 或更高版本 ## 构建说明 ### 快速开始 本项目使用 CMake 构建系统,支持多种构建方式。详细的构建指南请参考 [BUILD_GUIDE.md](BUILD_GUIDE.md)。 ### 推荐构建方式 **使用 Qt Creator(图形界面):** 1. 打开 Qt Creator 2. 选择 **文件** → **打开文件或项目** 3. 选择项目根目录下的 `CMakeLists.txt` 文件 4. 配置构建套件(Kit) 5. 点击 **构建** 按钮 **使用命令行:** ```bash # 创建构建目录 mkdir build && cd build # 配置项目(使用 Qt 的 CMake) "D:\Qt\Tools\CMake_64\bin\cmake.exe" -G "Ninja" \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_PREFIX_PATH="D:\Qt\6.9.1\mingw_64" \ .. # 构建项目 "D:\Qt\Tools\CMake_64\bin\cmake.exe" --build . ``` ### 系统要求 - **Qt 版本**: Qt 6.9.1 或更高版本 - **CMake 版本**: 3.16 或更高版本 - **编译器**: 支持 C++17 标准的编译器 ## 运行说明 ### 编译完成后运行程序 #### Windows平台 编译完成后,可执行文件位于: ``` build/bin/Debug/PID_Generator.exe # Debug模式 build/bin/Release/PID_Generator.exe # Release模式 build/bin/MinSizeRel/PID_Generator.exe # MinSizeRel模式 build/bin/RelWithDebInfo/PID_Generator.exe # RelWithDebInfo模式 ``` **运行方法:** 1. **直接双击运行**:在文件管理器中找到对应的exe文件,双击即可启动 2. **命令行运行**:打开命令提示符或PowerShell,切换到对应目录执行: ```cmd cd build\bin\Release PID_Generator.exe ``` #### Linux/macOS平台 编译完成后,可执行文件位于: ``` build/PID_Generator ``` **运行方法:** 1. **命令行运行**: ```bash cd build ./PID_Generator ``` 2. **添加执行权限**(如果需要): ```bash chmod +x PID_Generator ./PID_Generator ``` ### 程序启动后使用步骤 1. **启动程序**:运行编译生成的 `PID_Generator` 可执行文件 2. **填写软件信息**: - 软件名称:输入您的软件名称 - 版本号:输入软件版本号(默认V1.0) 3. **选择项目路径**:点击"选择"按钮,选择您的项目根目录 4. **设置文件后缀**:输入要扫描的文件后缀,多个后缀用英文逗号分隔(如:cpp,h,hpp,c,cc) 5. **选择文档类型**: - 前后60页文档(软著申请标准):生成前30页和后30页代码 - 全量源代码文档:生成完整的源代码文档 6. **设置源代码量**:输入期望的代码行数(默认1700行) 7. **可选设置**: - 是否打乱顺序:勾选后将打乱文件顺序 - 输出路径:选择文档保存位置(默认为程序运行目录) - 每页行数:设置每页包含的代码行数(10-100行,默认50行) - 文档格式:选择生成PDF文档(默认)或Word文档(.docx) - 页面大小:选择A4、A3或Letter页面大小 - 字体大小:设置字体大小(8-20磅,默认11磅) - 字体设置:选择字体类型 8. **生成文档**:点击"生成"按钮开始生成代码文档 9. **查看结果**:生成完成后,文档将保存在指定的输出路径中 ### 运行环境要求 - **Windows**:需要安装Visual C++ Redistributable(通常系统自带) - **Linux**:需要安装Qt6运行时库 - **macOS**:需要安装Qt6运行时库 ### 常见问题 1. **程序无法启动**: - 检查是否安装了必要的运行时库 - 确认编译是否成功完成 - 检查杀毒软件是否拦截了程序 2. **生成文档失败**: - 检查项目路径是否正确 - 确认文件后缀设置是否正确 - 检查输出路径是否有写入权限 3. **PDF文档显示异常**: - 确保选择了正确的页面大小 - 调整字体大小以获得更好的显示效果 - 检查每页行数设置是否合适 ## 项目结构 ``` PID_Generator/ ├── CMakeLists.txt # CMake配置文件 ├── main.cpp # 程序入口 ├── mainwindow.cpp # 主窗口实现 ├── mainwindow.h # 主窗口头文件 ├── mainwindow.ui # 主窗口UI文件 ├── src/ │ ├── core/ │ │ ├── CodeGenerator.cpp # 代码生成器核心实现 │ │ └── CodeGenerator.h # 代码生成器头文件 │ └── utils/ │ ├── FileUtils.cpp # 文件工具类实现 │ └── FileUtils.h # 文件工具类头文件 └── README.md # 项目说明文档 ``` ## 注意事项 1. **文件编码**:建议源代码文件使用UTF-8编码,以确保正确读取 2. **文件大小**:扫描大型项目时可能需要较长时间,请耐心等待 3. **输出格式**:支持生成Word文档(.docx)和PDF文档(.pdf)格式 4. **代码行数**:每页行数可自定义(10-100行),前后各30页 ## 开发说明 ### 代码规范 - 所有代码文件都包含详细的中文注释 - 采用模块化设计,高内聚低耦合 - 每个代码文件不超过200行 - 遵循Qt编码规范 ### 扩展开发 如需添加新功能,请遵循以下步骤: 1. 在相应的模块目录下创建新文件 2. 添加详细的函数和类注释 3. 更新CMakeLists.txt文件 4. 编写相应的测试代码 ## 许可证 本项目采用 **GNU Lesser General Public License v3.0 (LGPL v3)** 许可证。 ### 许可证要点 - **自由使用**:您可以自由使用、修改和分发本软件 - **开源要求**:如果您修改了本软件的库部分,必须开源您的修改 - **商业友好**:您可以将其用于商业项目,但需要遵守许可证条款 - **免责声明**:本软件按"原样"提供,不提供任何明示或暗示的保证 ### 许可证文本 完整的许可证文本请查看: - [LICENSE](LICENSE) - 英文版 LGPL v3 许可证 - [LICENSE_zh](LICENSE_zh) - 中文版 LGPL v3 许可证 ### 许可证链接 - [LGPL v3 官方文本](https://www.gnu.org/licenses/lgpl-3.0.html) - [LGPL v3 中文解释](https://www.gnu.org/licenses/lgpl-3.0.zh-cn.html) ## 版权信息 Copyright © 2025 彩旗工作室. All rights reserved. ## 联系方式 如有问题或建议,请通过以下方式联系: - 开发团队:彩旗工作室 - 项目主页:[GitHub仓库地址] - 问题反馈:[Issue页面] - 邮箱:contact@skstudio.cn