初始化提交
This commit is contained in:
183
README.md
Normal file
183
README.md
Normal file
@@ -0,0 +1,183 @@
|
||||
# WebToApp
|
||||
|
||||
一个基于 WPF 和 WebView2 的网页转桌面应用工具,可以将在线网页或本地网页打包成 Windows 桌面应用程序。
|
||||
|
||||
## 功能特性
|
||||
|
||||
- 🌐 **支持在线网页**:直接加载远程网页地址
|
||||
- 📁 **支持本地网页**:支持本地 HTML 文件,可通过 HTTP 服务器或直接文件方式加载
|
||||
- 🎨 **自定义窗口设置**:可配置窗口大小、置顶、全屏等属性
|
||||
- 🖱️ **自定义右键菜单**:提供返回、刷新、关于等快捷操作
|
||||
- 📥 **下载拦截**:智能拦截下载链接,使用系统保存对话框
|
||||
- 🎯 **滚动条隐藏**:可隐藏网页滚动条,提供更沉浸的体验
|
||||
- 🖼️ **自定义图标和标题**:支持自定义应用图标和窗口标题
|
||||
|
||||
## 技术栈
|
||||
|
||||
- **.NET 8.0** - 跨平台开发框架
|
||||
- **WPF** - Windows Presentation Foundation
|
||||
- **WebView2** - 基于 Chromium 的 WebView 控件
|
||||
|
||||
## 系统要求
|
||||
|
||||
- Windows 10/11
|
||||
- .NET 8.0 Runtime(如果使用独立部署则不需要)
|
||||
- WebView2 Runtime(通常已预装或会自动下载)
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 1. 克隆项目
|
||||
|
||||
```bash
|
||||
git clone https://github.com/yourusername/WebToApp.git
|
||||
cd WebToApp
|
||||
```
|
||||
|
||||
### 2. 配置应用
|
||||
|
||||
编辑 `config/config.json` 文件来配置你的应用:
|
||||
|
||||
#### 在线网页配置示例
|
||||
|
||||
```json
|
||||
{
|
||||
"软件名称": "我的应用",
|
||||
"软件logo": "config/logo.png",
|
||||
"网页类型": "在线网页",
|
||||
"在线网页": {
|
||||
"链接地址": "https://example.com"
|
||||
},
|
||||
"注入设置": {
|
||||
"隐藏网页滚动条": true,
|
||||
"自定义右键菜单": true,
|
||||
"拦截下载链接": true
|
||||
},
|
||||
"窗口设置": {
|
||||
"窗口宽度": 1200,
|
||||
"窗口高度": 800,
|
||||
"窗口可调整大小": true,
|
||||
"窗口置顶": false,
|
||||
"窗口阴影": true,
|
||||
"全屏": false
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 本地网页配置示例
|
||||
|
||||
```json
|
||||
{
|
||||
"软件名称": "我的应用",
|
||||
"软件logo": "config/logo.png",
|
||||
"网页类型": "本地网页",
|
||||
"本地网页": {
|
||||
"网页目录": "config/web",
|
||||
"网页入口": "index.html",
|
||||
"展示模式": "http服务器"
|
||||
},
|
||||
"注入设置": {
|
||||
"隐藏网页滚动条": true,
|
||||
"自定义右键菜单": true,
|
||||
"拦截下载链接": true
|
||||
},
|
||||
"窗口设置": {
|
||||
"窗口宽度": 1200,
|
||||
"窗口高度": 800,
|
||||
"窗口可调整大小": true,
|
||||
"窗口置顶": false,
|
||||
"窗口阴影": true,
|
||||
"全屏": false
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 3. 构建项目
|
||||
|
||||
使用 Visual Studio 或命令行构建:
|
||||
|
||||
```bash
|
||||
dotnet build
|
||||
```
|
||||
|
||||
### 4. 运行应用
|
||||
|
||||
```bash
|
||||
dotnet run
|
||||
```
|
||||
|
||||
或者直接运行编译后的可执行文件。
|
||||
|
||||
### 5. 发布应用
|
||||
|
||||
发布为独立可执行文件:
|
||||
|
||||
```bash
|
||||
dotnet publish -c Release -r win-x64 --self-contained true
|
||||
```
|
||||
|
||||
发布后的文件在 `bin/Release/net8.0-windows/win-x64/publish/` 目录下。
|
||||
|
||||
## 配置说明
|
||||
|
||||
### 窗口设置
|
||||
|
||||
- `窗口宽度` / `窗口高度`:设置窗口的初始大小(像素)
|
||||
- `窗口可调整大小`:是否允许用户调整窗口大小
|
||||
- `窗口置顶`:窗口是否始终显示在其他窗口之上
|
||||
- `窗口阴影`:是否显示窗口阴影效果
|
||||
- `全屏`:是否以全屏模式启动
|
||||
|
||||
### 注入设置
|
||||
|
||||
- `隐藏网页滚动条`:隐藏网页内的滚动条
|
||||
- `自定义右键菜单`:启用自定义右键菜单(包含返回、刷新、关于等功能)
|
||||
- `拦截下载链接`:拦截网页中的下载链接,使用系统保存对话框
|
||||
|
||||
### 本地网页展示模式
|
||||
|
||||
- `http服务器`:使用内置 HTTP 服务器提供网页服务(推荐)
|
||||
- `直接本地`:直接使用 `file://` 协议加载本地文件
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
WebToApp/
|
||||
├── config/ # 配置文件目录
|
||||
│ ├── config.json # 主配置文件
|
||||
│ ├── logo.png # 应用图标
|
||||
│ └── aboutpage/ # 关于页面
|
||||
│ └── about.html
|
||||
├── MainWindow.xaml # 主窗口 XAML
|
||||
├── MainWindow.xaml.cs # 主窗口代码
|
||||
├── App.xaml # 应用程序 XAML
|
||||
├── App.xaml.cs # 应用程序代码
|
||||
└── WebToApp.csproj # 项目文件
|
||||
```
|
||||
|
||||
## 开发
|
||||
|
||||
### 环境要求
|
||||
|
||||
- Visual Studio 2022 或更高版本
|
||||
- .NET 8.0 SDK
|
||||
|
||||
### 依赖项
|
||||
|
||||
- Microsoft.Web.WebView2 (1.0.3595.46)
|
||||
|
||||
## 许可证
|
||||
|
||||
本项目采用 MIT 许可证。
|
||||
|
||||
## 贡献
|
||||
|
||||
欢迎提交 Issue 和 Pull Request!
|
||||
|
||||
## 作者
|
||||
|
||||
[你的名字]
|
||||
|
||||
---
|
||||
|
||||
如果这个项目对你有帮助,请给个 ⭐ Star 支持一下!
|
||||
|
||||
Reference in New Issue
Block a user