This commit is contained in:
Neo
2026-03-15 10:15:02 +08:00
parent 2dd217522c
commit 72bb11b34f
916 changed files with 65306 additions and 16102803 deletions

View File

@@ -0,0 +1,13 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<!-- 白色填充版机器人(用于 ai-inline-icon 渐变背景上) -->
<rect x="5" y="7" width="14" height="12" rx="4" fill="white"/>
<path d="M12 7V4" stroke="white" stroke-width="2" stroke-linecap="round"/>
<circle cx="12" cy="3" r="1.5" fill="white"/>
<circle cx="9" cy="11.5" r="2" fill="white" opacity="0.5"/>
<circle cx="15" cy="11.5" r="2" fill="white" opacity="0.5"/>
<circle cx="9.5" cy="11" r="0.7" fill="white"/>
<circle cx="15.5" cy="11" r="0.7" fill="white"/>
<path d="M9.5 15C10 16 14 16 14.5 15" stroke="white" stroke-width="1.5" stroke-linecap="round" opacity="0.7"/>
<rect x="3" y="10" width="2" height="4" rx="1" fill="white"/>
<rect x="19" y="10" width="2" height="4" rx="1" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 840 B

View File

@@ -0,0 +1,16 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" fill="none">
<!-- AI 机器人 title badge icon — indigo 配色,用于标题徽章 -->
<!-- 对齐 H5 ai-icons.css .ai-title-badge-icon, 默认 indigo: #667eea → #a78bfa -->
<rect x="5" y="7" width="14" height="12" rx="4" fill="white" stroke="currentColor" stroke-width="0.8"/>
<path d="M12 7V4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
<circle cx="12" cy="3" r="1.5" fill="white" stroke="currentColor" stroke-width="0.7"/>
<circle cx="9" cy="11.5" r="2" fill="#667eea"/>
<circle cx="15" cy="11.5" r="2" fill="#667eea"/>
<circle cx="9.5" cy="11" r="0.7" fill="white"/>
<circle cx="15.5" cy="11" r="0.7" fill="white"/>
<path d="M9.5 15C10 16 14 16 14.5 15" stroke="#667eea" stroke-width="1.5" stroke-linecap="round"/>
<circle cx="7" cy="13.5" r="1" fill="#f5a0c0" opacity="0.6"/>
<circle cx="17" cy="13.5" r="1" fill="#f5a0c0" opacity="0.6"/>
<rect x="3" y="10" width="2" height="4" rx="1" fill="white" stroke="currentColor" stroke-width="0.7"/>
<rect x="19" y="10" width="2" height="4" rx="1" fill="white" stroke="currentColor" stroke-width="0.7"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 153 B

After

Width:  |  Height:  |  Size: 153 B

View File

Before

Width:  |  Height:  |  Size: 294 B

After

Width:  |  Height:  |  Size: 294 B

View File

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 185 B

View File

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 185 B

View File

Before

Width:  |  Height:  |  Size: 150 B

After

Width:  |  Height:  |  Size: 150 B

View File

Before

Width:  |  Height:  |  Size: 213 B

After

Width:  |  Height:  |  Size: 213 B

View File

Before

Width:  |  Height:  |  Size: 187 B

After

Width:  |  Height:  |  Size: 187 B

View File

Before

Width:  |  Height:  |  Size: 199 B

After

Width:  |  Height:  |  Size: 199 B

View File

Before

Width:  |  Height:  |  Size: 341 B

After

Width:  |  Height:  |  Size: 341 B

View File

Before

Width:  |  Height:  |  Size: 70 B

After

Width:  |  Height:  |  Size: 70 B

View File

Before

Width:  |  Height:  |  Size: 70 B

After

Width:  |  Height:  |  Size: 70 B

View File

Before

Width:  |  Height:  |  Size: 194 B

After

Width:  |  Height:  |  Size: 194 B

View File

Before

Width:  |  Height:  |  Size: 194 B

After

Width:  |  Height:  |  Size: 194 B

View File

Before

Width:  |  Height:  |  Size: 194 B

After

Width:  |  Height:  |  Size: 194 B

View File

Before

Width:  |  Height:  |  Size: 246 B

After

Width:  |  Height:  |  Size: 246 B

View File

Before

Width:  |  Height:  |  Size: 66 B

After

Width:  |  Height:  |  Size: 66 B

View File

Before

Width:  |  Height:  |  Size: 66 B

After

Width:  |  Height:  |  Size: 66 B

View File

Before

Width:  |  Height:  |  Size: 66 B

After

Width:  |  Height:  |  Size: 66 B

View File

Before

Width:  |  Height:  |  Size: 66 B

After

Width:  |  Height:  |  Size: 66 B

View File

Before

Width:  |  Height:  |  Size: 238 B

After

Width:  |  Height:  |  Size: 238 B

View File

Before

Width:  |  Height:  |  Size: 998 B

After

Width:  |  Height:  |  Size: 998 B

View File

@@ -0,0 +1,28 @@
<svg width="30" height="30" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<!-- ????? - ???? + ????? -->
<rect x="5" y="7" width="14" height="12" rx="4" fill="white" stroke="#1e3a5f" stroke-width="1.8" stroke-opacity="0.5"/>
<!-- ?? - ?? + ????? -->
<path d="M12 7V4" stroke="white" stroke-width="2.8" stroke-linecap="round"/>
<path d="M12 7V4" stroke="#1e3a5f" stroke-width="1.4" stroke-linecap="round" stroke-opacity="0.5"/>
<circle cx="12" cy="3" r="1.5" fill="white" stroke="#1e3a5f" stroke-width="1.2" stroke-opacity="0.5"/>
<!-- ?? -->
<circle cx="9" cy="11.5" r="2" fill="#667eea"/>
<circle cx="15" cy="11.5" r="2" fill="#667eea"/>
<!-- ???? -->
<circle cx="9.5" cy="11" r="0.7" fill="white"/>
<circle cx="15.5" cy="11" r="0.7" fill="white"/>
<!-- ???? -->
<path d="M9.5 15C10 16 14 16 14.5 15" stroke="#667eea" stroke-width="1.5" stroke-linecap="round"/>
<!-- ?? -->
<circle cx="7" cy="13.5" r="1" fill="#f5a0c0" opacity="0.5"/>
<circle cx="17" cy="13.5" r="1" fill="#f5a0c0" opacity="0.5"/>
<!-- ?? - ?? + ????? -->
<rect x="3" y="10" width="2" height="4" rx="1" fill="white" stroke="#1e3a5f" stroke-width="1.2" stroke-opacity="0.5"/>
<rect x="19" y="10" width="2" height="4" rx="1" fill="white" stroke="#1e3a5f" stroke-width="1.2" stroke-opacity="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,16 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" fill="none">
<!-- AI 机器人 inline icon — 白色版,用于深色背景行首 -->
<!-- 对齐 H5 task-list 中内联 SVG 结构 -->
<rect x="5" y="7" width="14" height="12" rx="4" fill="white"/>
<path d="M12 7V4" stroke="white" stroke-width="2" stroke-linecap="round"/>
<circle cx="12" cy="3" r="1.5" fill="white"/>
<circle cx="9" cy="11.5" r="2" fill="#667eea"/>
<circle cx="15" cy="11.5" r="2" fill="#667eea"/>
<circle cx="9.5" cy="11" r="0.7" fill="white"/>
<circle cx="15.5" cy="11" r="0.7" fill="white"/>
<path d="M9.5 15C10 16 14 16 14.5 15" stroke="#667eea" stroke-width="1.5" stroke-linecap="round"/>
<circle cx="7" cy="13.5" r="1" fill="#f5a0c0" opacity="0.6"/>
<circle cx="17" cy="13.5" r="1" fill="#f5a0c0" opacity="0.6"/>
<rect x="3" y="10" width="2" height="4" rx="1" fill="white"/>
<rect x="19" y="10" width="2" height="4" rx="1" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 983 B

View File

@@ -0,0 +1,18 @@
<!-- 黑色台球 - 大号8 -->
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="ballGradient" cx="35%" cy="35%">
<stop offset="0%" style="stop-color:#3a3a3a;stop-opacity:1" />
<stop offset="70%" style="stop-color:#1f2937;stop-opacity:1" />
<stop offset="100%" style="stop-color:#0f0f0f;stop-opacity:1" />
</radialGradient>
</defs>
<!-- 球体 -->
<circle cx="24" cy="24" r="18" fill="url(#ballGradient)"/>
<!-- 高光 -->
<ellipse cx="18" cy="16" rx="6" ry="4" fill="white" opacity="0.3"/>
<!-- 白色圆圈 -->
<circle cx="24" cy="24" r="8" fill="white"/>
<!-- 数字8 -->
<text x="24" y="29" font-family="Arial, sans-serif" font-size="11" font-weight="bold" fill="#1f2937" text-anchor="middle">8</text>
</svg>

After

Width:  |  Height:  |  Size: 833 B

View File

@@ -0,0 +1,18 @@
<!-- 灰色台球 - 大号8 -->
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="ballGrayGradient" cx="35%" cy="35%">
<stop offset="0%" style="stop-color:#d0d0d0;stop-opacity:1" />
<stop offset="70%" style="stop-color:#c5c5c5;stop-opacity:1" />
<stop offset="100%" style="stop-color:#a6a6a6;stop-opacity:1" />
</radialGradient>
</defs>
<!-- 球体 -->
<circle cx="24" cy="24" r="18" fill="url(#ballGrayGradient)" opacity="0.5"/>
<!-- 高光 -->
<ellipse cx="18" cy="16" rx="6" ry="4" fill="white" opacity="0.3"/>
<!-- 白色圆圈 -->
<circle cx="24" cy="24" r="8" fill="white" opacity="0.6"/>
<!-- 数字8 -->
<text x="24" y="29" font-family="Arial, sans-serif" font-size="11" font-weight="bold" fill="#a6a6a6" text-anchor="middle" opacity="0.6">8</text>
</svg>

After

Width:  |  Height:  |  Size: 883 B

View File

@@ -0,0 +1,11 @@
<!-- 空心爱心 - 华丽版 -->
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="heartStroke" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#ff6b9d;stop-opacity:1" />
<stop offset="50%" style="stop-color:#e34d59;stop-opacity:1" />
<stop offset="100%" style="stop-color:#c9184a;stop-opacity:1" />
</linearGradient>
</defs>
<path d="M24 42L20.55 38.85C11.4 30.48 5.25 24.87 5.25 18C5.25 12.39 9.39 8.25 15 8.25C18.09 8.25 21.06 9.69 23.25 12C25.44 9.69 28.41 8.25 31.5 8.25C37.11 8.25 41.25 12.39 41.25 18C41.25 24.87 35.1 30.48 25.95 38.85L24 42Z" stroke="url(#heartStroke)" stroke-width="2.5" fill="none"/>
</svg>

After

Width:  |  Height:  |  Size: 749 B

View File

@@ -0,0 +1,22 @@
<!-- 实心爱心 - 华丽版 -->
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<!-- 外发光 -->
<defs>
<filter id="glow">
<feGaussianBlur stdDeviation="2" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<linearGradient id="heartGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#ff6b9d;stop-opacity:1" />
<stop offset="50%" style="stop-color:#e34d59;stop-opacity:1" />
<stop offset="100%" style="stop-color:#c9184a;stop-opacity:1" />
</linearGradient>
</defs>
<!-- 主体爱心 -->
<path d="M24 42L20.55 38.85C11.4 30.48 5.25 24.87 5.25 18C5.25 12.39 9.39 8.25 15 8.25C18.09 8.25 21.06 9.69 23.25 12C25.44 9.69 28.41 8.25 31.5 8.25C37.11 8.25 41.25 12.39 41.25 18C41.25 24.87 35.1 30.48 25.95 38.85L24 42Z" fill="url(#heartGradient)" filter="url(#glow)"/>
<!-- 高光 -->
<path d="M15 8.25C12.5 8.25 10.3 9.2 8.8 10.8C10.5 9.5 12.6 8.8 15 8.8C17.5 8.8 19.8 9.8 21.5 11.5C20 9.5 17.7 8.25 15 8.25Z" fill="white" opacity="0.4"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="4" y="13" width="4" height="8" rx="1" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
<rect x="10" y="8" width="4" height="13" rx="1" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
<rect x="16" y="3" width="4" height="18" rx="1" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>

Before

Width:  |  Height:  |  Size: 382 B

After

Width:  |  Height:  |  Size: 405 B

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="4" y="13" width="4" height="8" rx="1" stroke="#8b8b8b" stroke-width="1.5"/>
<rect x="10" y="8" width="4" height="13" rx="1" stroke="#8b8b8b" stroke-width="1.5"/>
<rect x="16" y="3" width="4" height="18" rx="1" stroke="#8b8b8b" stroke-width="1.5"/>

Before

Width:  |  Height:  |  Size: 343 B

After

Width:  |  Height:  |  Size: 366 B

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="12" cy="7" r="4" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
<path d="M5.5 21a6.5 6.5 0 0113 0h-13z" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
</svg>

Before

Width:  |  Height:  |  Size: 255 B

After

Width:  |  Height:  |  Size: 278 B

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="12" cy="7" r="4" stroke="#8b8b8b" stroke-width="1.5"/>
<path d="M5.5 21a6.5 6.5 0 0113 0h-13z" stroke="#8b8b8b" stroke-width="1.5"/>
</svg>

Before

Width:  |  Height:  |  Size: 229 B

After

Width:  |  Height:  |  Size: 252 B

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="5" y="4" width="14" height="17" rx="2" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
<rect x="8" y="2" width="8" height="4" rx="1" fill="#0052d9" stroke="#0052d9" stroke-width="1"/>
<path d="M9 12l2 2 4-4" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>

Before

Width:  |  Height:  |  Size: 387 B

After

Width:  |  Height:  |  Size: 410 B

View File

@@ -1,4 +1,4 @@
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<svg viewBox="0 0 24 24" width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="5" y="4" width="14" height="17" rx="2" stroke="#8b8b8b" stroke-width="1.5"/>
<rect x="8" y="2" width="8" height="4" rx="1" stroke="#8b8b8b" stroke-width="1.5"/>
<path d="M9 12l2 2 4-4" stroke="#8b8b8b" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>

Before

Width:  |  Height:  |  Size: 363 B

After

Width:  |  Height:  |  Size: 386 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#1a6dd9"/>
<stop offset="15%" stop-color="#1a6dd9"/>
<stop offset="40%" stop-color="#4087e9"/>
<stop offset="60%" stop-color="#4087e9"/>
<stop offset="85%" stop-color="#6ba8f8"/>
<stop offset="100%" stop-color="#6ba8f8"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,103 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<!-- 主渐变 theme-blue -->
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#002d80"/>
<stop offset="15%" stop-color="#002d80"/>
<stop offset="40%" stop-color="#0052d9"/>
<stop offset="60%" stop-color="#0052d9"/>
<stop offset="85%" stop-color="#2b7de9"/>
<stop offset="100%" stop-color="#2b7de9"/>
</linearGradient>
<!-- 丝绸光带 -->
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<!-- 左上角深色 -->
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<!-- 顶部深色 -->
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<!-- 左侧光晕 -->
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<!-- 右下角光晕 -->
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<!-- 底部高光 -->
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<!-- 右上角光晕 -->
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<!-- Aurora 丝带渐变 -->
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<!-- 主渐变 -->
<rect width="750" height="580" fill="url(#main)"/>
<!-- 丝绸光带 -->
<rect width="750" height="580" fill="url(#silk)"/>
<!-- 左上角深色 -->
<rect width="750" height="580" fill="url(#darkTL)"/>
<!-- 顶部深色 -->
<rect width="750" height="580" fill="url(#darkTop)"/>
<!-- 左侧光晕 -->
<rect width="750" height="580" fill="url(#glowL)"/>
<!-- 右下角光晕 -->
<rect width="750" height="580" fill="url(#glowBR)"/>
<!-- 底部高光 -->
<rect width="750" height="580" fill="url(#edgeHL)"/>
<!-- 右上角光晕 -->
<rect width="750" height="580" fill="url(#glowTR)"/>
<!-- Aurora 丝带
原始 CSS: viewBox 400×200, background-size:480px 160px, background-position:center 40px, opacity:0.5
H5 画布 412px 宽 → 小程序 750rpx 宽,缩放比 750/412=1.820
x: (412-480)/2=-34 → -34×1.820=-61.9
y: 40px → 40×1.820=72.8
scale.x: 1.2×1.820=2.184
scale.y: 0.8×1.820=1.456
-->
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#be4a62"/>
<stop offset="15%" stop-color="#be4a62"/>
<stop offset="40%" stop-color="#d4617a"/>
<stop offset="60%" stop-color="#d4617a"/>
<stop offset="85%" stop-color="#e8899a"/>
<stop offset="100%" stop-color="#e8899a"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,78 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<!-- theme-dark-gold: 深色黑金,右下角金色光晕 -->
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#1a1a1a"/>
<stop offset="40%" stop-color="#2a2520"/>
<stop offset="100%" stop-color="#1f1c18"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.03"/>
<stop offset="45%" stop-color="white" stop-opacity="0.08"/>
<stop offset="55%" stop-color="white" stop-opacity="0.08"/>
<stop offset="80%" stop-color="white" stop-opacity="0.03"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.3"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.2"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.06"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<!-- 金色右下光晕 (::after dark-gold 特殊处理) -->
<radialGradient id="glowGold" cx="0.6" cy="0.7" r="0.6" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="#ffc400" stop-opacity="0.25"/>
<stop offset="50%" stop-color="#ffbb00" stop-opacity="0"/>
</radialGradient>
<linearGradient id="goldDiag" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="#ffbb00" stop-opacity="0"/>
<stop offset="30%" stop-color="#ffbb00" stop-opacity="0.15"/>
<stop offset="60%" stop-color="#ffb700" stop-opacity="0.2"/>
<stop offset="100%" stop-color="#ffb700" stop-opacity="0"/>
</linearGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="#ffc400" stop-opacity="0.1"/>
<stop offset="25%" stop-color="#ffc400" stop-opacity="0"/>
</linearGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.3"/>
<stop offset="50%" stop-color="white" stop-opacity="0.1"/>
<stop offset="100%" stop-color="white" stop-opacity="0.2"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.2"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.25"/>
<stop offset="70%" stop-color="white" stop-opacity="0.25"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<!-- 金色光晕 -->
<rect width="750" height="580" fill="url(#glowGold)"/>
<rect width="750" height="580" fill="url(#goldDiag)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<!-- Aurora 丝带opacity 降低,配合深色主题) -->
<g opacity="0.35" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.15" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#9a3412"/>
<stop offset="15%" stop-color="#9a3412"/>
<stop offset="40%" stop-color="#ea580c"/>
<stop offset="60%" stop-color="#ea580c"/>
<stop offset="85%" stop-color="#f97316"/>
<stop offset="100%" stop-color="#f97316"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#9d174d"/>
<stop offset="15%" stop-color="#9d174d"/>
<stop offset="40%" stop-color="#db2777"/>
<stop offset="60%" stop-color="#db2777"/>
<stop offset="85%" stop-color="#ec4899"/>
<stop offset="100%" stop-color="#ec4899"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#991b1b"/>
<stop offset="15%" stop-color="#991b1b"/>
<stop offset="40%" stop-color="#dc2626"/>
<stop offset="60%" stop-color="#dc2626"/>
<stop offset="85%" stop-color="#ef4444"/>
<stop offset="100%" stop-color="#ef4444"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,76 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 750 580" preserveAspectRatio="xMidYMid slice">
<defs>
<linearGradient id="main" x1="0" y1="1" x2="0.8" y2="0">
<stop offset="0%" stop-color="#0f766e"/>
<stop offset="15%" stop-color="#0f766e"/>
<stop offset="40%" stop-color="#14b8a6"/>
<stop offset="60%" stop-color="#14b8a6"/>
<stop offset="85%" stop-color="#2dd4bf"/>
<stop offset="100%" stop-color="#2dd4bf"/>
</linearGradient>
<linearGradient id="silk" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="20%" stop-color="white" stop-opacity="0.04"/>
<stop offset="45%" stop-color="white" stop-opacity="0.12"/>
<stop offset="55%" stop-color="white" stop-opacity="0.12"/>
<stop offset="80%" stop-color="white" stop-opacity="0.04"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="darkTL" cx="-0.1" cy="-0.05" r="0.75" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="black" stop-opacity="0.25"/>
<stop offset="45%" stop-color="black" stop-opacity="0"/>
</radialGradient>
<linearGradient id="darkTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="black" stop-opacity="0.18"/>
<stop offset="40%" stop-color="black" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowL" cx="0.05" cy="0.4" r="0.65" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.12"/>
<stop offset="50%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<radialGradient id="glowBR" cx="0.85" cy="0.95" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.25"/>
<stop offset="55%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="edgeHL" x1="0" y1="1" x2="0" y2="0">
<stop offset="0%" stop-color="white" stop-opacity="0.15"/>
<stop offset="25%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<radialGradient id="glowTR" cx="0.85" cy="0.1" r="0.55" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="40%" stop-color="white" stop-opacity="0.1"/>
<stop offset="65%" stop-color="white" stop-opacity="0"/>
</radialGradient>
<linearGradient id="r1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="white" stop-opacity="0.4"/>
<stop offset="50%" stop-color="white" stop-opacity="0.15"/>
<stop offset="100%" stop-color="white" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="r2" x1="0%" y1="100%" x2="100%" y2="0%">
<stop offset="0%" stop-color="black" stop-opacity="0.15"/>
<stop offset="50%" stop-color="white" stop-opacity="0.2"/>
<stop offset="100%" stop-color="black" stop-opacity="0.1"/>
</linearGradient>
<linearGradient id="r3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="30%" stop-color="white" stop-opacity="0.35"/>
<stop offset="70%" stop-color="white" stop-opacity="0.35"/>
<stop offset="100%" stop-color="white" stop-opacity="0"/>
</linearGradient>
<filter id="aBlur"><feGaussianBlur stdDeviation="2"/></filter>
</defs>
<rect width="750" height="580" fill="url(#main)"/>
<rect width="750" height="580" fill="url(#silk)"/>
<rect width="750" height="580" fill="url(#darkTL)"/>
<rect width="750" height="580" fill="url(#darkTop)"/>
<rect width="750" height="580" fill="url(#glowL)"/>
<rect width="750" height="580" fill="url(#glowBR)"/>
<rect width="750" height="580" fill="url(#edgeHL)"/>
<rect width="750" height="580" fill="url(#glowTR)"/>
<g opacity="0.5" transform="translate(-62,73) scale(2.184,1.456)">
<path d="M-50 180 Q80 100 180 140 T350 100 T500 140" fill="none" stroke="url(#r2)" stroke-width="60" stroke-linecap="round" filter="url(#aBlur)"/>
<path d="M-30 50 Q100 120 200 70 T380 110 T520 60" fill="none" stroke="url(#r1)" stroke-width="45" stroke-linecap="round"/>
<path d="M0 120 Q120 60 220 100 T420 70" fill="none" stroke="url(#r3)" stroke-width="25" stroke-linecap="round"/>
<path d="M50 90 Q150 150 280 90 T450 120" fill="none" stroke="white" stroke-opacity="0.25" stroke-width="8" stroke-linecap="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 B

View File

@@ -0,0 +1,69 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 95 95" width="95" height="95">
<defs>
<filter id="textBlur">
<feGaussianBlur stdDeviation="0.73"/>
</filter>
<!-- 内圆填充:从边框向圆心的单向光路,边缘不透明→圆心透明 -->
<radialGradient id="innerLight" cx="50%" cy="50%" r="50%" gradientUnits="objectBoundingBox">
<stop offset="0%" stop-color="white" stop-opacity="0"/>
<stop offset="60%" stop-color="white" stop-opacity="0.18"/>
<stop offset="82%" stop-color="white" stop-opacity="0.38"/>
<stop offset="95%" stop-color="white" stop-opacity="0.75"/>
<stop offset="100%" stop-color="white" stop-opacity="0.95"/>
</radialGradient>
</defs>
<rect width="95" height="95" fill="transparent"/>
<!-- 外圆:更鲜艳红色 -->
<circle cx="47.5" cy="47.5" r="44.75"
fill="transparent"
stroke="rgb(255, 45, 45)"
stroke-width="5.5"/>
<!-- 内圆填充:从边框向圆心的光路渐变 -->
<circle cx="47.5" cy="47.5" r="40.25"
fill="url(#innerLight)"/>
<!-- 内圆:纯白描边,无发光 -->
<circle cx="47.5" cy="47.5" r="40.25"
fill="none"
stroke="rgb(255, 255, 255)"
stroke-width="3.65"/>
<!-- 👍 Emoji -->
<text x="47.5" y="33"
font-size="33"
text-anchor="middle"
dominant-baseline="middle"
fill="#000">👍</text>
<!-- 白色描边层 -->
<text x="47.5" y="72"
font-family="sans-serif, -apple-system, BlinkMacSystemFont"
font-size="20"
font-weight="bold"
text-anchor="middle"
fill="rgba(255,255,255,0.95)"
stroke="rgba(255,255,255,0.95)"
stroke-width="4"
paint-order="stroke">已完成</text>
<!-- 模糊白色光晕层 -->
<text x="47.5" y="72"
font-family="sans-serif, -apple-system, BlinkMacSystemFont"
font-size="20"
font-weight="bold"
text-anchor="middle"
fill="rgba(255,255,255,0.9)"
opacity="0.9"
filter="url(#textBlur)">已完成</text>
<!-- 红色文字主体:更鲜艳 -->
<text x="47.5" y="72"
font-family="sans-serif, -apple-system, BlinkMacSystemFont"
font-size="20"
font-weight="bold"
text-anchor="middle"
fill="rgb(235, 25, 25)">已完成</text>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB