# chengnan 项目链接: `chengnan` 是一个轻量级 Windows 图片查看器 / 简单图片处理工具,使用 **Qt Widgets + CMake + C++17** 开发。 ## 功能 当前实现: - 打开图片:PNG、JPG、JPEG、BMP、GIF、WebP 等 Qt 支持的格式 - 保存当前图片 - 另存为 PNG / JPG / BMP 等格式 - 图片显示:使用 Qt Widgets,不使用 OpenCV 窗口 - 缩放:工具栏滑块、放大、缩小、原始大小 - 双击图片适配窗口 - 旋转:左旋 90°、右旋 90° - 翻转:水平翻转、垂直翻转 - 简单处理:灰度化、反色 ## 文件结构 ```text chengnan/ ├── CMakeLists.txt ├── MainWindow.cpp ├── MainWindow.h ├── build-windows.ps1 ├── main.cpp └── readme.md ``` ## Windows 编译需要的工具 推荐环境:Windows 10 / Windows 11 x64。 必须安装: 1. **Git for Windows** - 下载: - 用于克隆项目源码。 2. **CMake 3.16 或更高版本** - 下载: - 安装时建议勾选 `Add CMake to the system PATH`。 3. **Qt 6 或 Qt 5,包含 Widgets 模块** - 下载: - 推荐安装 Qt 6.x 的 MSVC 64-bit 套件,例如 `msvc2019_64` 或 `msvc2022_64`。 - 项目不依赖 OpenCV。 4. **Visual Studio 2022 Build Tools 或 Visual Studio 2022** - 下载: - 需要安装组件:`使用 C++ 的桌面开发`。 - 提供 MSVC 编译器和 Windows SDK。 可选工具: - **Ninja**: - 如果使用 Ninja,可以把 `build-windows.ps1` 的 `-Generator` 参数改成 `Ninja`。 ## 获取源码 ```powershell git clone https://git.luochen570.cn/luochen570/chengnan.git cd chengnan ``` 如果仓库主分支已切换到当前版本,直接构建即可;否则可手动切换: ```powershell git checkout main ``` ## 一键构建(推荐) 在 Windows PowerShell 中进入项目目录,然后执行: ```powershell powershell -ExecutionPolicy Bypass -File .\build-windows.ps1 -QtPrefix "C:\Qt\6.7.2\msvc2019_64" ``` 请把 `-QtPrefix` 改成你本机实际 Qt 安装目录。例如: ```powershell powershell -ExecutionPolicy Bypass -File .\build-windows.ps1 -QtPrefix "C:\Qt\6.8.0\msvc2022_64" ``` 脚本会完成: 1. 检查 Qt、CMake、编译器环境 2. 生成 CMake 构建目录 3. 编译 Release 版本 4. 调用 `windeployqt` 收集 Qt 运行库 5. 把发布文件放到 `dist-windows\chengnan` 构建成功后,运行: ```powershell .\dist-windows\chengnan\chengnan.exe ``` ## 手动构建 如果不使用脚本,也可以手动执行: ```powershell cmake -S . -B build-windows -G "Visual Studio 17 2022" -A x64 -DCMAKE_PREFIX_PATH="C:\Qt\6.7.2\msvc2019_64" cmake --build build-windows --config Release ``` 打包 Qt 运行库: ```powershell C:\Qt\6.7.2\msvc2019_64\bin\windeployqt.exe --release --no-translations build-windows\Release\chengnan.exe ``` ## 常见问题 ### 找不到 Qt 确认 `-QtPrefix` 指向 Qt 套件目录,而不是 Qt 根目录。例如应使用: ```text C:\Qt\6.7.2\msvc2019_64 ``` 不要写成: ```text C:\Qt ``` ### 找不到 MSVC 编译器 请安装 Visual Studio 2022 的 `使用 C++ 的桌面开发`,然后在 “x64 Native Tools Command Prompt for VS 2022” 或已配置 VS 环境的 PowerShell 里运行构建脚本。 ### exe 复制到其它电脑无法运行 请运行 `build-windows.ps1`,并整体复制 `dist-windows\chengnan` 文件夹,不要只复制单个 `chengnan.exe`。 ## 开发说明 - `main.cpp`:应用入口,创建并显示主窗口 - `MainWindow.h`:主窗口和图片标签类声明 - `MainWindow.cpp`:菜单、工具栏、图片显示和处理逻辑 - `CMakeLists.txt`:Qt Widgets CMake 构建配置 - `build-windows.ps1`:Windows 一键构建与打包脚本 - `readme.md`:项目说明文档