577 字
3 分钟
基于SharpIco开发图片转ICO工具网站
基于SharpIco开发图片转ICO工具网站
SharpIcoWeb
📝项目介绍
SharpIcoWeb是基于SharpIco开发的图片转ICO工具网站,支持上传png、jpg等图片转换为多尺寸的Ico图片文件。采用前后端分离技术。
后端接口使用 .NET Minimal API开发,够轻量。
📍项目地址
https://github.com/ZyPLJ/SharpIcoWeb
🎯 应用场景
- 网站Favicon 🌐
- 软件图标 🖥️
- 个性化文件夹标识 📂
<link rel="icon" type="image/x-icon" href="/logo.ico" />✨核心技术
| ⚡ Vite+Vue+Element-Plus 极速的开发服务器和高效的生产构建 | 🗂️ → ❌ 纯文件操作(无需SQLite/MySQL) |
|---|---|
| 🏗️.NET 9 MiniAPI 轻量级API开发,处理图像转换业务逻辑 | 🖼️ 后端使用的强大图像处理库,实现PNG/JPG转ICO |
| 🐳 可容器化(Docker 支持) | 📱 + 💻 响应式设计(适配移动端) |
✅后续更新
- 不同尺寸ICO,可分别生成ICO文件。
- 前端显示ICO文件图标数量数据、大小、偏移等数据。
- 批量转换功能。
🚀快速开始
Docker部署
注意注释部分配置可能需要根据实际情况修改
Docker CLI
docker-compose up --build -ddefault.conf
server { listen 5173; # 配置端口 server_name 0.0.0.0; # 修改为docker服务宿主机的ip
# 设置允许的最大请求体大小(例如 100MB) client_max_body_size 100M;
location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ /index.html =404; }
location /api { proxy_pass http://backend:5235; # Docker 内部网络 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }}Docker Compose
version: '3.8'
services: frontend: build: context: ./sharp-ico-vue # 指向前端目录 dockerfile: Dockerfile ports: - "5173:5173" # 前端映射到宿主机的5173端口 depends_on: - backend
backend: build: context: . # 指向后端目录 dockerfile: Dockerfile ports: - "5235:5235" # 后端端口手动部署
clone
git clone https://github.com/ZyPLJ/SharpIcoWeb.git
后端运行
cd SharpIcoWeb
dotnet build -c Release
dotnet run前端运行
cd ..
cd sharp-ico-vue
npm install
npm run dev👀如何使用
前后端项目运行或部署后,打开运行后网址。
选择需要生成的ICO图表尺寸,可多选

上传图片文件,点击转换。

🛠 开发指南
项目结构
sharp-ico/├── SharpIco/ # 图标转换类库│ ├── SharpIco.csproj├── SharpIcoWeb/ # 后端Api项目│ ├── SharpIcoWeb.csproj├── sharp-ico-vue # 前端项目开发环境
- .Net 9
- Node.js 20.19+
- Vue3
运行项目
后端
dotnet build -c Release
dotnet run前端
npm install
npm run dev相关链接
- SharpIco 🌟 Star if useful!
- SharpIcoWeb 🌟 Star if useful!
基于SharpIco开发图片转ICO工具网站
https://blog.pljzy.top/posts/sharpico/基于sharpico开发图片转ico工具网站/ 相关文章 智能推荐
1
SharpIcoWeb开发记录篇
.NET 技术合集 SharpIcoWeb开发记录篇.
2
dotnet Minimal APIs实现动态注册端点
.NET 技术合集 dotnet Minimal APIs实现动态注册端点.
3
C#中进行单元测试
.NET 技术合集 单元测试前言时隔多个月,终于抽空学习了点新知识,那么这次来记录一下C#怎么进行单元测试,单元测试是做什么的。我相信大部分刚毕业的都很疑惑单元测试是干什么的?在小厂实习了6个月后,我发现每天除了写CRUD就是写CRUD,几乎用不到单元测试。写完一个功能直接上手去测,当然这只是我个人感受,仅供参考。然后当我还在抱怨测试好烦的时候,大佬跟我说为什么不用单元测试和集成测试,我这也是有苦说不出。
4
C# LINQ基础差集计算
.NET 技术合集 C# LINQ基础差集计算前言最近开发的时候遇到个需求,接口参数为表的主键集合,用接口传递过来的参数去数据库查询数据,然后返回数据库不存在的数据。举个例子集合 1,2,3,4,5数据库 1,2,3通过查询语句查询,能从数据库查询出1,2,3来,然后与参数对比发现4,5是不存在与数据库的,那么要返回出来。
5
记录一次NPOI库导出Excel遇到的小问题解决方案
杂七杂八 在工作中经常回去导入或者导出Excel,那么我在工作中用的是NPOI库,很方便。不过在用的时候难免会出现问题,在这里记录一下这次需求遇到的问题。
随机文章 随机推荐