refactor: 重新设计 Logo - 简洁现代的三爪设计

设计改进:
- 更简洁的三爪抽象设计(左/右/下三个方向)
- 去除复杂的网格装饰,更加简约现代
- 渐变色调整为更柔和的紫蓝色
- 侧边栏 Logo 从文字 CP 改为 SVG 图标
- 图标尺寸和样式优化,视觉效果更统一

技术细节:
- 全套 PNG 图标重新生成(16-1024px)
- 更新 icns (1.0M) 和 ico 文件
- 侧边栏 SVG 图标使用 currentColor 适配主题
This commit is contained in:
晴天
2026-02-28 15:25:29 +08:00
parent 333a3e54bb
commit 9b6d572ec8
27 changed files with 42 additions and 33 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 645 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 704 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 715 B

After

Width:  |  Height:  |  Size: 663 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 704 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 645 KiB

View File

@@ -2,47 +2,40 @@
<svg width="512" height="512" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#6366f1;stop-opacity:1" />
<stop offset="100%" style="stop-color:#4f46e5;stop-opacity:1" />
<stop offset="0%" style="stop-color:#818cf8;stop-opacity:1" />
<stop offset="100%" style="stop-color:#6366f1;stop-opacity:1" />
</linearGradient>
<filter id="shadow">
<feGaussianBlur in="SourceAlpha" stdDeviation="8"/>
<feOffset dx="0" dy="4" result="offsetblur"/>
<feComponentTransfer>
<feFuncA type="linear" slope="0.3"/>
</feComponentTransfer>
<filter id="glow">
<feGaussianBlur stdDeviation="4" result="coloredBlur"/>
<feMerge>
<feMergeNode/>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
</defs>
<!-- 背景圆形 -->
<circle cx="256" cy="256" r="240" fill="url(#grad1)" filter="url(#shadow)"/>
<circle cx="256" cy="256" r="240" fill="url(#grad1)"/>
<!-- 爪印主体 - 中心大圆 -->
<ellipse cx="256" cy="280" rx="70" ry="85" fill="white" opacity="0.95"/>
<!-- 简洁的三爪设计 -->
<g fill="white" opacity="0.95" filter="url(#glow)">
<!-- 中心圆 -->
<circle cx="256" cy="280" r="55"/>
<!-- 左爪 -->
<ellipse cx="140" cy="200" rx="32" ry="70" transform="rotate(-30 140 200)"/>
<!-- 右爪 -->
<ellipse cx="372" cy="200" rx="32" ry="70" transform="rotate(30 372 200)"/>
<!-- 下爪 -->
<ellipse cx="256" cy="380" rx="32" ry="70"/>
</g>
<!-- 四个爪尖 -->
<!-- 左上 -->
<ellipse cx="160" cy="180" rx="35" ry="55" fill="white" opacity="0.95"
transform="rotate(-25 160 180)"/>
<!-- 左下 -->
<ellipse cx="180" cy="360" rx="35" ry="55" fill="white" opacity="0.95"
transform="rotate(15 180 360)"/>
<!-- 右上 -->
<ellipse cx="352" cy="180" rx="35" ry="55" fill="white" opacity="0.95"
transform="rotate(25 352 180)"/>
<!-- 右下 -->
<ellipse cx="332" cy="360" rx="35" ry="55" fill="white" opacity="0.95"
transform="rotate(-15 332 360)"/>
<!-- 面板网格装饰(科技感) -->
<g opacity="0.15" stroke="white" stroke-width="2" fill="none">
<line x1="256" y1="80" x2="256" y2="432"/>
<line x1="80" y1="256" x2="432" y2="256"/>
<circle cx="256" cy="256" r="120"/>
<circle cx="256" cy="256" r="180"/>
<!-- 装饰线条 -->
<g stroke="white" stroke-width="3" fill="none" opacity="0.2">
<path d="M 256 100 Q 256 180 256 225"/>
<path d="M 100 256 Q 180 256 225 256"/>
<path d="M 412 256 Q 332 256 287 256"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -58,7 +58,16 @@ export function renderSidebar(el) {
let html = `
<div class="sidebar-header">
<div class="sidebar-logo">CP</div>
<div class="sidebar-logo">
<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
<g fill="currentColor">
<circle cx="256" cy="280" r="55"/>
<ellipse cx="140" cy="200" rx="32" ry="70" transform="rotate(-30 140 200)"/>
<ellipse cx="372" cy="200" rx="32" ry="70" transform="rotate(30 372 200)"/>
<ellipse cx="256" cy="380" rx="32" ry="70"/>
</g>
</svg>
</div>
<span class="sidebar-title">ClawPanel</span>
</div>
<nav class="sidebar-nav">

View File

@@ -32,6 +32,13 @@
font-size: var(--font-size-sm);
color: var(--text-inverse);
flex-shrink: 0;
padding: 4px;
}
.sidebar-logo svg {
width: 100%;
height: 100%;
fill: white;
}
.sidebar-title {