diff --git a/assets/icon.ico b/assets/icon.ico index 893e467..45a5ef7 100644 Binary files a/assets/icon.ico and b/assets/icon.ico differ diff --git a/assets/icon.png b/assets/icon.png index 5a2bd55..f48dfb6 100644 Binary files a/assets/icon.png and b/assets/icon.png differ diff --git a/src/renderer/components/Icons.tsx b/src/renderer/components/Icons.tsx index 800697a..58f610d 100644 --- a/src/renderer/components/Icons.tsx +++ b/src/renderer/components/Icons.tsx @@ -9,26 +9,92 @@ interface IconProps { const defaultProps: Partial = { size: 18 } -// ===== 应用图标 ===== +// ===== 应用图标(科技感风格) ===== export function AppIcon({ size = 80 }: IconProps) { + const s = size + const margin = Math.max(1, s / 20) + const radius = Math.max(3, s / 5) + const gridStep = Math.max(4, s / 8) + const ringR = s / 3 + const ringW = Math.max(1, s / 30) + const dotR = Math.max(1, s / 24) + const fontSize = Math.max(10, s * 45 / 100) + const arrowSize = Math.max(3, s / 7) + const arrowTop = s / 2 + Math.max(4, s / 8) + const arrowBottom = arrowTop + arrowSize + const lw = Math.max(1, s / 18) + const scanY = s - margin - Math.max(3, s / 10) + const scanLeft = margin + Math.max(3, s / 6) + const scanRight = s - margin - Math.max(3, s / 6) + const curX = s - margin - Math.max(3, s / 5) + const curY = margin + Math.max(3, s / 5) + const curSize = Math.max(2, s / 12) + return ( - - {/* 背景圆角矩形 */} - - {/* Markdown M↓ 符号 */} - - {/* 底部装饰线 */} - + - - - - - - - + + + + + + + + + + + + + + + {/* 背景 */} + + + + {/* 科技网格 */} + {Array.from({length: Math.floor((s - 2*margin) / gridStep)}, (_, i) => { + const x = margin + (i + 1) * gridStep + return + })} + {Array.from({length: Math.floor((s - 2*margin) / gridStep)}, (_, i) => { + const y = margin + (i + 1) * gridStep + return + })} + + {/* 发光圆环 */} + + + + {/* 四角光点 */} + {[[margin + radius/2, margin + radius/2], [s - margin - radius/2, margin + radius/2], + [margin + radius/2, s - margin - radius/2], [s - margin - radius/2, s - margin - radius/2]].map(([x, y], i) => + + )} + + {/* M 文字发光 */} + M + {/* M 文字主体 */} + M + + {/* ↓ 箭头 */} + + + + + {/* 底部扫描线 */} + + + + {/* 右上角光标 */} + + + ) }