# translate **Repository Path**: co-code/translate ## Basic Information - **Project Name**: translate - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-03 - **Last Updated**: 2026-08-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 百度翻译桌面端(WPF + CommunityToolkit.Mvvm) 参照官方示例 `Baidu_Trans_C_Sharp.cs`(百度通用文本翻译 API:GET + `sign = MD5(appid + q + salt + secretKey)`)实现的 Windows 桌面翻译工具。 ## 功能 - 系统托盘常驻:关闭/最小化窗口即隐藏到右下角托盘,右键托盘可退出 - 全局快捷键 `Ctrl+Alt+T` 唤出/隐藏(可在设置中修改,支持 Ctrl/Alt/Shift/Win + 键) - 紧凑翻译小窗:输入即译(500ms 防抖)、`Ctrl+Enter` 立即翻译、`Esc` 隐藏、`⇄` 一键交换语言 - 唤出时若输入框为空,自动读取剪贴板文本并翻译 - 翻译成功自动复制结果(可关闭) - 托盘菜单「翻译剪贴板」:不弹窗,直接翻译并复制,气泡提示结果 - 长文本自动按 1800 字符分块翻译并合并 - 设置窗口可配置:AppId / SecretKey / 接口地址 / 默认源语言 / 默认目标语言 / 全局快捷键 / 超时秒数 / 自动复制,并带「测试连接」按钮 - 配置存于 `%AppData%\BaiduTranslate\config.json`,SecretKey 用 Windows DPAPI(当前用户)加密后落盘 ## 运行 ```powershell dotnet run --project src\BaiduTranslate ``` 首次使用:点击窗口右上角 ⚙ 进入设置,填入百度翻译开放平台(fanyi-api.baidu.com)申请的 AppId / SecretKey,点「测试连接」验证,保存即可。 ## 发布单文件 exe ```powershell .\publish.ps1 # 默认 win-x64 自包含单文件,输出到 dist\ .\publish.ps1 -FramedDependent # 小体积版,目标机器需装 .NET 10 Desktop Runtime ``` 说明:WPF 官方不支持 NativeAOT,这里用 Self-Contained + Single-File 发布代替(发布版已验证可运行,约 180 MB)。 ## 项目结构 ``` src/BaiduTranslate/ App.xaml(.cs) 应用入口:托盘、全局热键、单实例、配置装配 MainWindow.xaml(.cs) 紧凑翻译主窗(无边框、置顶、跟随光标) Views/SettingsWindow 设置窗口 ViewModels/ MainViewModel / SettingsViewModel(CommunityToolkit.Mvvm) Services/ BaiduTranslateService / ConfigService(DPAPI) / HotkeyService / WindowPositioner Models/ AppConfig / TranslateResult Common/Languages.cs 语言代码与显示名 ``` ## 注意事项 - 配置中的 SecretKey 由 Windows DPAPI 按当前 Windows 用户加密,配置文件不能直接拷到其他用户/机器上使用 - 免费版百度翻译 API 有字符量限制,超出会在状态栏/气泡中提示接口返回的错误码