Integrate community pelican runs from PRs #2 and #3; run variants

A combination can now ship multiple versions of the same case:
runs.<case-id> accepts an array, each extra variant naming its own
file; the viewer grows a RUN 01/02 switcher and validation enforces
distinct files plus a provenance note per variant.

Integrated content, attributed to their authors:
- Gemini 3.1 Pro + 3.5 Flash pelican runs from both PRs, shown as two
  variants each (PR #2's Google AI Studio runs first, PR #3's second)
- Doubao Seed 2.0 Pro / Mini pelican runs (folders renamed to the
  dash-only convention)
- GPT-5.5 Codex pelican run

Co-authored-by: lpluma <liuyz2023@mails.jlu.edu.cn>
Co-authored-by: XA2333 <97206278+XA2333@users.noreply.github.com>
This commit is contained in:
committed 2026-06-10 12:09:09 +01:00
1 parent 80817b8a2b
commit e87ef7e70f
17 files changed
+2201 -3

No files matched your search

@@ -0,0 +1,342 @@
<svg viewBox="0 0 800 600" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg">
<defs>
<!-- 天空渐变 -->
<linearGradient id="skyGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#1A3060" />
<stop offset="40%" stop-color="#C25A7C" />
<stop offset="70%" stop-color="#EC7D52" />
<stop offset="100%" stop-color="#FCD0A1" />
</linearGradient>
<!-- 太阳径向渐变 -->
<radialGradient id="sunGrad" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#FFFDF0" stop-opacity="1" />
<stop offset="40%" stop-color="#FFE090" stop-opacity="0.8" />
<stop offset="100%" stop-color="#FCD0A1" stop-opacity="0" />
</radialGradient>
<!-- 海水渐变 -->
<linearGradient id="seaGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#22607A" />
<stop offset="100%" stop-color="#0F2042" />
</linearGradient>
<!-- 沙滩渐变 -->
<linearGradient id="sandGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#EED59B" />
<stop offset="100%" stop-color="#C5A363" />
</linearGradient>
<!-- 云朵渐变 -->
<linearGradient id="cloudGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#FFFFFF" stop-opacity="0.3" />
<stop offset="100%" stop-color="#FCD0A1" stop-opacity="0" />
</linearGradient>
<!-- 鹈鹕羽毛阴影渐变 -->
<linearGradient id="pelicanShadow" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#FFFFFF" />
<stop offset="85%" stop-color="#F1F5F9" />
<stop offset="100%" stop-color="#CBD5E1" />
</linearGradient>
<!-- 鹈鹕大嘴渐变 -->
<linearGradient id="beakGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#FBBF24" />
<stop offset="70%" stop-color="#F59E0B" />
<stop offset="100%" stop-color="#D97706" />
</linearGradient>
<!-- 鹈鹕喉囊渐变 -->
<linearGradient id="pouchGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#FDA4AF" />
<stop offset="50%" stop-color="#F87171" />
<stop offset="100%" stop-color="#FB923C" />
</linearGradient>
<!-- 自行车车轮组件 -->
<g id="wheel">
<!-- 轮胎 -->
<circle cx="0" cy="0" r="55" fill="none" stroke="#2D3748" stroke-width="12" />
<!-- 车胎内圈胎纹 -->
<circle cx="0" cy="0" r="49" fill="none" stroke="#1A202C" stroke-width="1.5" />
<!-- 轮毂 -->
<circle cx="0" cy="0" r="47" fill="none" stroke="#E2E8F0" stroke-width="2" />
<!-- 辐条 -->
<path d="M-47 0 L47 0 M0 -47 L0 47 M-33 -33 L33 33 M-33 33 L33 -33 M-43 -18 L43 18 M-43 18 L43 -18 M-18 -43 L18 43 M-18 43 L18 -43" stroke="#94A3B8" stroke-width="1" opacity="0.7" />
<!-- 轴心 -->
<circle cx="0" cy="0" r="9" fill="#4A5568" />
<circle cx="0" cy="0" r="5" fill="#718096" />
</g>
</defs>
<!-- BACKGROUND: 天空 -->
<rect width="800" height="420" fill="url(#skyGrad)" />
<!-- 太阳 -->
<circle cx="380" cy="270" r="100" fill="url(#sunGrad)" />
<!-- 背景远山/海岛 -->
<path d="M-50 350 Q 80 320 200 340 T 450 350 T 700 345 T 850 350 L 850 370 L -50 370 Z" fill="#4A4161" opacity="0.4" />
<!-- 远处的云 -->
<path d="M 120 180 Q 150 160 180 180 T 240 180 L 240 200 L 120 200 Z" fill="url(#cloudGrad)" />
<path d="M 550 140 Q 580 120 610 140 T 670 140 L 670 160 L 550 160 Z" fill="url(#cloudGrad)" />
<!-- 海燕/海鸥(远景) -->
<path d="M 150 90 Q 155 83 160 90 Q 165 83 170 90" fill="none" stroke="#475569" stroke-width="2" stroke-linecap="round" />
<path d="M 185 105 Q 189 100 193 105 Q 197 100 201 105" fill="none" stroke="#475569" stroke-width="1.5" stroke-linecap="round" />
<path d="M 480 110 Q 488 100 496 110 Q 504 100 512 110" fill="none" stroke="#475569" stroke-width="2" stroke-linecap="round" />
<!-- MIDDLEGROUND: 大海 -->
<path d="M -50 350 Q 200 330 450 355 T 850 350 L 850 450 L -50 450 Z" fill="url(#seaGrad)" />
<!-- 太阳在海面的金色波光 -->
<g opacity="0.6">
<ellipse cx="380" cy="360" rx="90" ry="2" fill="#FFE090" />
<ellipse cx="375" cy="370" rx="130" ry="3" fill="#FFE090" />
<ellipse cx="385" cy="385" rx="100" ry="2.5" fill="#FFE090" />
<ellipse cx="380" cy="400" rx="70" ry="2" fill="#FFE090" />
<ellipse cx="380" cy="415" rx="40" ry="1.5" fill="#FFE090" />
</g>
<!-- 岸边的浪花细线 -->
<path d="M 50 425 Q 200 410 400 425 T 750 420" fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" opacity="0.5" />
<path d="M 100 435 Q 300 420 500 435 T 850 430" fill="none" stroke="#FFFFFF" stroke-width="1.5" stroke-linecap="round" opacity="0.4" />
<!-- FOREGROUND: 沙滩路段 -->
<path d="M -50 425 Q 350 400 850 440 L 850 650 L -50 650 Z" fill="url(#sandGrad)" />
<!-- 潮湿沙滩反光带 -->
<path d="M -50 425 Q 350 400 850 440 L 850 460 L -50 445 Z" fill="#E2C98F" opacity="0.6" />
<!-- 背景海滩植物(左侧) -->
<g fill="#2D3748" opacity="0.85">
<path d="M 10 440 Q 5 380 -10 350 Q 15 390 25 440" />
<path d="M 25 440 Q 30 360 50 330 Q 45 380 35 440" />
<path d="M 35 440 Q 55 370 85 350 Q 65 390 45 440" />
</g>
<!-- 自行车投影(使画面写实的关键细节) -->
<ellipse cx="280" cy="565" rx="65" ry="12" fill="#78350F" opacity="0.35" />
<ellipse cx="520" cy="565" rx="65" ry="12" fill="#78350F" opacity="0.35" />
<ellipse cx="400" cy="565" rx="80" ry="15" fill="#78350F" opacity="0.25" />
<!-- 自行车组件:后半部分 (置于躯干后方) -->
<!-- 后轮 -->
<use href="#wheel" x="280" y="510" />
<!-- 后挡泥板(复古奶油黄) -->
<path d="M 215 510 A 65 65 0 0 1 338 468" fill="none" stroke="#FEF08A" stroke-width="8" stroke-linecap="round" />
<path d="M 215 510 A 65 65 0 0 1 338 468" fill="none" stroke="#E2E8F0" stroke-width="2" stroke-linecap="round" opacity="0.5" />
<!-- 后泥板支架 -->
<line x1="280" y1="510" x2="225" y2="490" stroke="#94A3B8" stroke-width="2" />
<line x1="280" y1="510" x2="255" y2="460" stroke="#94A3B8" stroke-width="2" />
<!-- 自行车传动系统 -->
<!-- 链条暗部与亮部 -->
<path d="M 380 495 L 280 502 M 380 525 L 280 518" fill="none" stroke="#334155" stroke-width="3" />
<path d="M 380 495 L 280 502 M 380 525 L 280 518" fill="none" stroke="#94A3B8" stroke-width="1" />
<!-- 牙盘 -->
<circle cx="380" cy="510" r="19" fill="#E2E8F0" stroke="#475569" stroke-width="2" />
<circle cx="380" cy="510" r="14" fill="#334155" />
<!-- 背景脚踏板与腿 (处于车身另一侧) -->
<line x1="345" y1="440" x2="360" y2="540" stroke="#C2410C" stroke-width="8" stroke-linecap="round" opacity="0.8" />
<path d="M 360 540 Q 380 545 385 550 Q 365 555 350 545 Z" fill="#9A3412" opacity="0.8" />
<line x1="380" y1="510" x2="360" y2="540" stroke="#64748B" stroke-width="5" stroke-linecap="round" opacity="0.8" />
<line x1="350" y1="540" x2="370" y2="540" stroke="#1E293B" stroke-width="5" stroke-linecap="round" opacity="0.8" />
<!-- 自行车车架 (主结构) -->
<!-- 湖蓝色复古车架 -->
<line x1="380" y1="510" x2="345" y2="422" stroke="#06B6D4" stroke-width="8" stroke-linecap="round" /> <!-- 立管 -->
<line x1="280" y1="510" x2="380" y2="510" stroke="#06B6D4" stroke-width="8" stroke-linecap="round" /> <!-- 平叉 -->
<line x1="280" y1="510" x2="345" y2="422" stroke="#06B6D4" stroke-width="5" stroke-linecap="round" /> <!-- 后斜撑 -->
<line x1="380" y1="510" x2="480" y2="390" stroke="#06B6D4" stroke-width="9" stroke-linecap="round" /> <!-- 下管 -->
<path d="M 345 435 Q 410 420 480 390" fill="none" stroke="#06B6D4" stroke-width="8" stroke-linecap="round" /> <!-- 弯曲上管 -->
<!-- 复古皮革车座 -->
<path d="M 322 415 Q 350 405 368 418 Q 360 426 345 423 L 322 422 Z" fill="#78350F" />
<path d="M 322 415 Q 350 405 360 415" fill="none" stroke="#B45309" stroke-width="2" />
<rect x="340" y="422" width="6" height="10" fill="#94A3B8" />
<!-- 自行车前半部分 -->
<!-- 前轮 -->
<use href="#wheel" x="520" y="510" />
<!-- 前挡泥板 -->
<path d="M 480 465 A 65 65 0 0 1 580 515" fill="none" stroke="#FEF08A" stroke-width="8" stroke-linecap="round" />
<path d="M 480 465 A 65 65 0 0 1 580 515" fill="none" stroke="#E2E8F0" stroke-width="2" stroke-linecap="round" opacity="0.5" />
<!-- 前叉 -->
<line x1="480" y1="390" x2="520" y2="510" stroke="#06B6D4" stroke-width="7" stroke-linecap="round" />
<line x1="480" y1="390" x2="475" y2="345" stroke="#94A3B8" stroke-width="6" stroke-linecap="round" /> <!-- 车把立管 -->
<!-- 复古燕把 -->
<path d="M 475 345 Q 455 338 430 360" fill="none" stroke="#94A3B8" stroke-width="5" stroke-linecap="round" />
<path d="M 475 345 Q 490 340 500 350" fill="none" stroke="#94A3B8" stroke-width="4" stroke-linecap="round" opacity="0.7" /> <!-- 右车把微露 -->
<line x1="435" y1="356" x2="425" y2="363" stroke="#1E293B" stroke-width="7" stroke-linecap="round" /> <!-- 黑色把套 -->
<!-- 车筐 (藤编效果) -->
<g>
<!-- 挂接架 -->
<line x1="475" y1="355" x2="490" y2="365" stroke="#475569" stroke-width="3" />
<line x1="480" y1="390" x2="495" y2="395" stroke="#475569" stroke-width="3" />
<!-- 车筐主体 -->
<rect x="490" y="360" width="48" height="38" rx="6" fill="#D97706" stroke="#92400E" stroke-width="2" />
<!-- 藤编网格纹理 -->
<line x1="490" y1="370" x2="538" y2="370" stroke="#78350F" stroke-width="1.5" />
<line x1="490" y1="380" x2="538" y2="380" stroke="#78350F" stroke-width="1.5" />
<line x1="490" y1="390" x2="538" y2="390" stroke="#78350F" stroke-width="1.5" />
<line x1="500" y1="360" x2="500" y2="398" stroke="#78350F" stroke-width="1.5" />
<line x1="514" y1="360" x2="514" y2="398" stroke="#78350F" stroke-width="1.5" />
<line x1="528" y1="360" x2="528" y2="398" stroke="#78350F" stroke-width="1.5" />
<!-- 车筐里盛开的鲜花与绿叶 -->
<path d="M 522 355 Q 535 345 528 360 Z" fill="#22C55E" />
<circle cx="522" cy="358" r="7" fill="#EF4444" />
<circle cx="522" cy="358" r="2.5" fill="#FCD34D" />
<path d="M 498 358 Q 485 350 495 360 Z" fill="#10B981" />
<circle cx="502" cy="358" r="6" fill="#F43F5E" />
<circle cx="502" cy="358" r="2" fill="#FBBF24" />
</g>
<!-- SUBJECT: 鹈鹕 -->
<!-- 远侧翅膀 (微露) -->
<path d="M 330 350 C 335 325 360 330 375 342 C 370 355 350 360 330 350 Z" fill="#CBD5E1" opacity="0.7" />
<!-- 尾羽 -->
<g>
<path d="M 275 395 C 250 390 240 405 230 400 C 248 415 268 410 278 402 Z" fill="#CBD5E1" />
<path d="M 280 390 C 255 380 245 395 235 390 C 252 405 272 400 282 395 Z" fill="#E2E8F0" />
</g>
<!-- 身体躯干 (丰满厚重) -->
<path d="M 345 425 C 290 425 278 395 270 395 C 290 375 315 358 355 358 C 390 358 402 390 385 415 C 375 425 360 425 345 425 Z" fill="url(#pelicanShadow)" stroke="#E2E8F0" stroke-width="1" />
<!-- S型修长的脖子 -->
<path d="M 345 360 C 330 305 352 255 378 248 C 388 243 392 228 388 212 C 398 212 408 232 398 252 C 382 272 368 308 375 360 Z" fill="url(#pelicanShadow)" />
<!-- 随风飘扬的红色围巾 (动感核心) -->
<g>
<!-- 飘带 1 -->
<path d="M 368 275 C 320 270 290 240 245 260 C 285 280 318 290 368 277 Z" fill="#DC2626" />
<!-- 飘带 2 -->
<path d="M 368 275 C 310 280 280 270 235 290 C 275 305 308 300 368 277 Z" fill="#991B1B" />
<!-- 围巾结 -->
<ellipse cx="372" cy="275" rx="14" ry="8" transform="rotate(-15 372 275)" fill="#EF4444" />
<ellipse cx="372" cy="275" rx="10" ry="5" transform="rotate(-15 372 275)" fill="#F87171" opacity="0.6" />
</g>
<!-- 头部 -->
<path d="M 370 215 C 365 190 380 180 405 185 C 418 190 422 205 410 220 C 400 230 380 230 370 215 Z" fill="url(#pelicanShadow)" />
<!-- 后脑勺的呆毛/羽冠 -->
<path d="M 370 200 Q 352 188 358 182 Q 358 195 370 205" fill="#CBD5E1" />
<path d="M 373 192 Q 355 180 360 175 Q 361 188 372 196" fill="#E2E8F0" />
<!-- 喉囊 (大而富有质感) -->
<g>
<path d="M 410 218 C 435 240 420 295 382 295 C 368 295 368 265 375 245 Z" fill="url(#pouchGrad)" />
<!-- 喉囊纹理褶皱 -->
<path d="M 400 240 Q 390 265 377 270" fill="none" stroke="#EF4444" stroke-width="1.5" opacity="0.4" />
<path d="M 408 235 Q 398 265 382 278" fill="none" stroke="#EF4444" stroke-width="1.5" opacity="0.4" />
<path d="M 414 230 Q 406 260 388 285" fill="none" stroke="#EF4444" stroke-width="1.5" opacity="0.4" />
</g>
<!-- 巨大的眼睑与灵动的眼睛 -->
<g>
<path d="M 383 198 Q 395 188 406 203" fill="none" stroke="#E2E8F0" stroke-width="3.5" stroke-linecap="round" />
<circle cx="395" cy="202" r="8" fill="#FBBF24" /> <!-- 鲜艳的黄眼圈 -->
<circle cx="395" cy="202" r="4.5" fill="#1E293B" />
<circle cx="393.5" cy="200.5" r="1.5" fill="#FFFFFF" /> <!-- 高光 -->
</g>
<!-- 标致性的大长嘴 -->
<g>
<!-- 上喙 -->
<path d="M 405 195 Q 480 205 540 225 Q 545 228 542 235 Q 530 235 515 230 L 410 218 Z" fill="url(#beakGrad)" />
<!-- 尖端标志性的红色鹰钩 -->
<path d="M 535 223 Q 544 226 542 235 Q 534 235 528 228 Z" fill="#EF4444" />
<!-- 上喙反光线 -->
<path d="M 412 198 Q 480 208 532 226" fill="none" stroke="#FFF" stroke-width="2.5" opacity="0.6" stroke-linecap="round" />
<!-- 下喙 -->
<path d="M 410 218 L 515 230 Q 520 232 515 235 L 410 226 Z" fill="#F59E0B" />
</g>
<!-- 近侧大腿 -->
<path d="M 345 425 Q 365 430 365 450 Q 345 455 340 425 Z" fill="#FFFFFF" stroke="#E2E8F0" stroke-width="1" />
<!-- 橙色的小腿 -->
<line x1="355" y1="445" x2="400" y2="480" stroke="#FB923C" stroke-width="8" stroke-linecap="round" />
<!-- 踩在踏板上的橙红色鸭蹼脚 -->
<g>
<path d="M 400 480 L 428 475 L 432 485 L 402 490 Z" fill="#EA580C" />
<!-- 蹼爪骨骼线 -->
<line x1="400" y1="480" x2="428" y2="475" stroke="#F97316" stroke-width="2.5" />
<line x1="400" y1="480" x2="432" y2="485" stroke="#F97316" stroke-width="2.5" />
<line x1="400" y1="480" x2="415" y2="492" stroke="#F97316" stroke-width="2.5" />
<!-- 黑色利爪微显 -->
<circle cx="428" cy="475" r="1.5" fill="#1E293B" />
<circle cx="432" cy="485" r="1.5" fill="#1E293B" />
</g>
<!-- 近侧脚踏板 (盖在脚掌上) -->
<line x1="380" y1="510" x2="400" y2="480" stroke="#CBD5E1" stroke-width="6" stroke-linecap="round" /> <!-- 曲柄 -->
<line x1="390" y1="480" x2="415" y2="480" stroke="#475569" stroke-width="5" stroke-linecap="round" /> <!-- 踏板 -->
<!-- 近侧翅膀 (富有层次感,紧握车把) -->
<g>
<!-- 翅膀根部 -->
<path d="M 340 360 C 350 330 385 330 408 350 C 388 368 360 372 340 360 Z" fill="#FFFFFF" stroke="#F1F5F9" stroke-width="1" />
<!-- 中层羽毛 (浅灰色过渡) -->
<path d="M 350 365 C 370 345 398 345 418 365 C 398 382 370 382 350 365 Z" fill="#E2E8F0" />
<!-- 飞羽/初级飞羽 (呈握持姿态,深色,符合野生鹈鹕特征) -->
<!-- 羽毛手指 1 (握在把手上) -->
<path d="M 370 370 Q 410 365 435 365 Q 430 376 398 382 Z" fill="#475569" />
<!-- 羽毛手指 2 -->
<path d="M 380 375 Q 415 370 432 373 Q 425 384 392 387 Z" fill="#1E293B" />
<!-- 羽毛手指 3 -->
<path d="M 390 380 Q 415 378 428 381 Q 420 392 388 392 Z" fill="#0F172A" />
</g>
<!-- FOREGROUND: 近景环境(增强纵深感与真实感) -->
<!-- 右侧巨大的椰子树剪影 (框架构图) -->
<g>
<!-- 树干 -->
<path d="M 800 650 Q 750 350 740 180 Q 748 178 755 180 Q 765 350 815 650 Z" fill="#1E293B" />
<!-- 树干环形树纹 -->
<g stroke="#0F172A" stroke-width="2" opacity="0.4">
<path d="M 790 580 Q 770 575 752 578" />
<path d="M 780 520 Q 762 515 746 518" />
<path d="M 770 460 Q 754 455 741 458" />
<path d="M 761 400 Q 746 395 736 398" />
<path d="M 753 340 Q 740 335 732 338" />
<path d="M 748 280 Q 736 275 730 278" />
<path d="M 744 220 Q 736 215 732 218" />
</g>
<!-- 繁茂的椰树叶 -->
<!-- 叶 1 (左下垂) -->
<path d="M 745 180 Q 630 165 545 220 Q 640 195 745 180" fill="#1E293B" />
<!-- 叶 2 (左中) -->
<path d="M 745 180 Q 650 100 575 135 Q 660 140 745 180" fill="#1E1B4B" />
<!-- 叶 3 (向上) -->
<path d="M 745 180 Q 710 70 665 60 Q 710 105 745 180" fill="#1E293B" />
<!-- 叶 4 (右伸) -->
<path d="M 745 180 Q 790 70 835 80 Q 780 115 745 180" fill="#1E1B4B" />
<!-- 叶 5 (右下垂) -->
<path d="M 745 180 Q 840 140 875 185 Q 810 165 745 180" fill="#1E293B" />
</g>
<!-- 左前角沙滩小草(前景遮挡) -->
<g fill="#1E293B">
<path d="M -10 600 Q 15 540 -5 500 Q 25 550 35 600 Z" />
<path d="M 15 600 Q 40 520 60 470 Q 55 540 45 600 Z" opacity="0.9" />
<path d="M 35 600 Q 65 530 95 500 Q 75 550 55 600 Z" opacity="0.8" />
</g>
<!-- 车轮扬起的一丝沙尘 (点缀动感) -->
<g fill="#C5A363" opacity="0.6">
<circle cx="210" cy="560" r="3" />
<circle cx="225" cy="552" r="2" />
<circle cx="200" cy="565" r="1.5" />
<circle cx="455" cy="562" r="2.5" />
<circle cx="445" cy="558" r="1.5" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

@@ -0,0 +1,407 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 700" width="100%" height="100%">
<defs>
<!-- 天空渐变 -->
<linearGradient id="skyGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#1E1B4B" /> <!-- 深邃夜色 -->
<stop offset="40%" stop-color="#701A75" /> <!-- 梦幻紫红 -->
<stop offset="75%" stop-color="#F43F5E" /> <!-- 晚霞红 -->
<stop offset="100%" stop-color="#F97316" /> <!-- 温暖橙黄 -->
</linearGradient>
<!-- 太阳光晕 -->
<radialGradient id="sunGlow" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#FFFDE7" stop-opacity="1" />
<stop offset="30%" stop-color="#FDE047" stop-opacity="0.8" />
<stop offset="60%" stop-color="#F43F5E" stop-opacity="0.3" />
<stop offset="100%" stop-color="#F97316" stop-opacity="0" />
</radialGradient>
<!-- 海洋渐变 -->
<linearGradient id="seaGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#F43F5E" /> <!-- 倒映天空 -->
<stop offset="20%" stop-color="#4F46E5" /> <!-- 深蓝 -->
<stop offset="60%" stop-color="#0E7490" /> <!-- 碧绿 -->
<stop offset="100%" stop-color="#083344" /> <!-- 暗青 -->
</linearGradient>
<!-- 沙滩渐变 -->
<linearGradient id="sandGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#FEF08A" /> <!-- 潮湿的金色沙子 -->
<stop offset="30%" stop-color="#EAB308" />
<stop offset="100%" stop-color="#854D0E" />
</linearGradient>
<!-- 鹈鹕喙部渐变 -->
<linearGradient id="beakGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#FED7AA" />
<stop offset="70%" stop-color="#F97316" />
<stop offset="100%" stop-color="#EA580C" />
</linearGradient>
<!-- 鹈鹕喉囊(半透明) -->
<linearGradient id="pouchGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#FB7185" stop-opacity="0.9" />
<stop offset="100%" stop-color="#FDA4AF" stop-opacity="0.6" />
</linearGradient>
<!-- 自行车车架薄荷绿 -->
<linearGradient id="mintGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#99F6E4" />
<stop offset="100%" stop-color="#0F766E" />
</linearGradient>
<!-- 金属铬质感 -->
<linearGradient id="chromeGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#F1F5F9" />
<stop offset="50%" stop-color="#94A3B8" />
<stop offset="100%" stop-color="#475569" />
</linearGradient>
<!-- 柔和阴影滤镜 -->
<filter id="softShadow" x="-10%" y="-10%" width="120%" height="120%">
<feDropShadow dx="0" dy="8" stdDeviation="6" flood-color="#1E293B" flood-opacity="0.4" />
</filter>
<!-- 模糊发光滤镜 -->
<filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
<feGaussianBlur stdDeviation="10" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
</defs>
<!-- ==================== 背景层 ==================== -->
<!-- 天空 -->
<rect width="1000" height="700" fill="url(#skyGrad)" />
<!-- 太阳与光晕 -->
<circle cx="500" cy="380" r="280" fill="url(#sunGlow)" opacity="0.6" />
<circle cx="500" cy="380" r="140" fill="url(#sunGlow)" opacity="0.9" />
<circle cx="500" cy="380" r="60" fill="#FFFDF5" filter="url(#glow)" />
<!-- 远山/海岛剪影 -->
<path d="M 0 420 Q 200 390 400 420 T 800 410 T 1000 420 L 1000 440 L 0 440 Z" fill="#4D0E4E" opacity="0.5" />
<!-- 海洋与海浪 -->
<path d="M 0 420 Q 250 410 500 425 T 1000 420 L 1000 520 Q 750 530 500 515 T 0 520 Z" fill="url(#seaGrad)" />
<!-- 海浪波光 -->
<path d="M 0 440 Q 300 425 600 445 T 1000 435" stroke="#FCE7F3" stroke-width="2" fill="none" opacity="0.4" />
<path d="M 0 470 Q 200 485 500 465 T 1000 480" stroke="#FBCFE8" stroke-width="3" fill="none" opacity="0.3" />
<ellipse cx="500" cy="435" rx="120" ry="2" fill="#FFFDE7" opacity="0.7" filter="url(#glow)" />
<ellipse cx="480" cy="455" rx="80" ry="1.5" fill="#FFFDE7" opacity="0.6" />
<ellipse cx="520" cy="480" rx="150" ry="2" fill="#FFFDE7" opacity="0.4" filter="url(#glow)" />
<!-- 远景飞鸟 -->
<g stroke="#701A75" stroke-width="2" fill="none" stroke-linecap="round" opacity="0.6">
<path d="M 780 160 Q 788 150 796 160 Q 804 150 812 160" />
<path d="M 830 135 Q 836 127 842 135 Q 848 127 854 135" stroke-width="1.5" />
<path d="M 750 120 Q 754 114 758 120 Q 762 114 766 120" stroke-width="1" />
</g>
<!-- 左侧椰子树剪影 -->
<g fill="#1E1B4B" opacity="0.85">
<path d="M -20 700 Q 80 400 30 150 C 35 150 45 150 50 150 Q 100 400 0 700 Z" />
<!-- 椰叶 -->
<path d="M 35 150 Q -30 140 -80 180 Q -20 170 35 150" />
<path d="M 35 150 Q 10 90 -20 50 Q 5 100 35 150" />
<path d="M 35 150 Q 80 80 140 60 Q 85 110 35 150" />
<path d="M 35 150 Q 110 140 160 200 Q 90 170 35 150" />
<path d="M 35 150 Q 60 210 50 270 Q 40 200 35 150" />
</g>
<!-- 沙滩 -->
<path d="M 0 510 Q 350 490 700 525 T 1000 510 L 1000 700 L 0 700 Z" fill="url(#sandGrad)" />
<!-- 沙滩纹理与潮汐线 -->
<path d="M 0 540 Q 450 515 1000 550" stroke="#CA8A04" stroke-width="4" fill="none" opacity="0.4" />
<path d="M 0 590 Q 500 570 1000 600" stroke="#854D0E" stroke-width="3" fill="none" opacity="0.3" />
<!-- 自行车与人物整体阴影 -->
<ellipse cx="500" cy="635" rx="280" ry="18" fill="#451A03" opacity="0.6" filter="url(#glow)" />
<!-- ==================== 自行车背景部分 ==================== -->
<!-- 后车轮 -->
<g id="rear-wheel">
<!-- 轮胎 -->
<circle cx="320" cy="520" r="110" fill="none" stroke="#1E293B" stroke-width="18" />
<!-- 复古白边胎侧 -->
<circle cx="320" cy="520" r="100" fill="none" stroke="#FEF08A" stroke-width="8" />
<!-- 车圈 -->
<circle cx="320" cy="520" r="91" fill="none" stroke="url(#chromeGrad)" stroke-width="6" />
<!-- 车辐条 -->
<g stroke="#E2E8F0" stroke-width="1.5" opacity="0.7">
<line x1="320" y1="410" x2="320" y2="630" />
<line x1="210" y1="520" x2="430" y2="520" />
<line x1="242" y1="442" x2="398" y2="598" />
<line x1="242" y1="598" x2="398" y2="442" />
<line x1="270" y1="425" x2="370" y2="615" />
<line x1="370" y1="425" x2="270" y2="615" />
<line x1="215" y1="470" x2="425" y2="570" />
<line x1="215" y1="570" x2="425" y2="470" />
</g>
<!-- 轴承 -->
<circle cx="320" cy="520" r="16" fill="url(#chromeGrad)" />
<!-- 后泥除 (挡泥板) -->
<path d="M 210 510 A 115 115 0 0 1 405 440" stroke="url(#mintGrad)" stroke-width="12" fill="none" stroke-linecap="round" />
<line x1="320" y1="520" x2="225" y2="480" stroke="url(#chromeGrad)" stroke-width="3" />
<line x1="320" y1="520" x2="265" y2="425" stroke="url(#chromeGrad)" stroke-width="3" />
</g>
<!-- ==================== 鹈鹕背景部分 (后肢、后羽) ==================== -->
<!-- 左侧翅膀 (扬起挥舞,显得生动活泼) -->
<g id="far-wing" filter="url(#softShadow)">
<path d="M 400 290 C 330 250 260 170 220 90 C 245 125 290 190 320 210 C 315 150 300 90 290 30 C 315 70 350 140 360 190 C 380 130 395 70 400 20 C 410 70 425 140 430 220 Z" fill="#E2E8F0" stroke="#CBD5E1" stroke-width="2" />
<!-- 羽毛细节阴影 -->
<path d="M 320 210 Q 340 160 350 120" stroke="#94A3B8" stroke-width="2" fill="none" />
<path d="M 360 190 Q 380 140 390 90" stroke="#94A3B8" stroke-width="2" fill="none" />
</g>
<!-- 左腿 (踏在对侧脚踏板上) -->
<g id="far-leg">
<path d="M 390 410 Q 405 440 395 460" stroke="#CBD5E1" stroke-width="16" stroke-linecap="round" fill="none" />
<path d="M 395 460 L 425 470" stroke="#D97706" stroke-width="10" stroke-linecap="round" fill="none" />
<!-- 蹼足 -->
<path d="M 425 470 L 450 460 L 445 480 L 420 480 Z" fill="#B45309" />
</g>
<!-- 远端脚踏板 -->
<rect x="415" y="465" width="30" height="8" rx="3" fill="#475569" opacity="0.8" />
<!-- ==================== 自行车车架与传动系统 ==================== -->
<!-- 车架钢管 -->
<g id="frame" stroke="url(#mintGrad)" stroke-linecap="round" fill="none">
<!-- 后平叉 -->
<path d="M 320 520 L 480 520" stroke-width="14" />
<!-- 后上叉 -->
<path d="M 320 520 L 420 360" stroke-width="10" />
<!-- 立管 -->
<path d="M 480 520 L 420 360" stroke-width="15" />
<!-- 弧形复古双前管 (沙滩车特色双梁) -->
<path d="M 420 380 Q 520 370 610 320" stroke-width="12" />
<path d="M 420 410 Q 510 410 610 340" stroke-width="10" />
<!-- 下管 -->
<path d="M 480 520 Q 560 500 610 330" stroke-width="15" />
</g>
<!-- 链条罩与链条 -->
<path d="M 315 510 L 485 500 Q 505 500 505 520 Q 505 540 485 540 L 315 530 Z" fill="url(#mintGrad)" stroke="#0F766E" stroke-width="2" />
<!-- 牙盘 -->
<circle cx="480" cy="520" r="32" fill="none" stroke="url(#chromeGrad)" stroke-width="6" />
<circle cx="480" cy="520" r="24" fill="#1E293B" opacity="0.8" />
<!-- ==================== 鹈鹕身体与头部 ==================== -->
<!-- 鹈鹕躯干 (丰满温润的身体) -->
<path d="M 390 330 C 340 330 320 390 380 435 C 450 465 490 395 470 330 C 450 300 420 310 390 330 Z" fill="#F8FAFC" filter="url(#softShadow)" />
<!-- 羽毛纹理亮部与暗部 -->
<path d="M 350 375 Q 340 400 375 425" stroke="#E2E8F0" stroke-width="3" fill="none" stroke-linecap="round" />
<path d="M 375 390 Q 380 415 415 425" stroke="#CBD5E1" stroke-width="3" fill="none" stroke-linecap="round" />
<!-- 翘起的可爱尾羽 -->
<path d="M 350 340 L 300 330 C 290 345 300 360 320 365 L 310 375 C 325 380 340 375 355 365 Z" fill="#E2E8F0" stroke="#CBD5E1" stroke-width="1" />
<!-- 优雅的 S 型脖颈 -->
<path d="M 460 320 Q 505 290 480 210 Q 460 145 510 115 L 535 130 Q 490 165 505 230 Q 520 280 475 325 Z" fill="#F8FAFC" />
<!-- 头部 -->
<circle cx="510" cy="120" r="32" fill="#F8FAFC" />
<!-- 脑后呆毛 (蓬松的羽毛冠) -->
<path d="M 485 110 Q 460 90 445 110 Q 470 115 485 118 Z" fill="#E2E8F0" />
<path d="M 488 100 Q 465 80 455 100 Q 475 105 488 108 Z" fill="#F8FAFC" />
<!-- 大嘴 (上喙) -->
<path d="M 530 110 Q 610 115 675 132 C 685 135 680 143 670 143 L 525 140 Z" fill="url(#beakGrad)" filter="url(#softShadow)" />
<!-- 尖锐的喙钩 -->
<path d="M 668 131 Q 682 133 674 143 Q 666 136 668 131" fill="#D97706" />
<!-- 喙部反光 -->
<path d="M 540 114 Q 610 120 660 133" stroke="#FFF" stroke-width="2.5" stroke-linecap="round" fill="none" opacity="0.6" />
<!-- 标志性大喉囊 (下嘴) -->
<path d="M 525 140 Q 570 215 625 165 L 655 141 Z" fill="url(#pouchGrad)" />
<!-- 喉囊半透明褶皱线与隐约的小鱼影子(写实生动细节) -->
<path d="M 540 155 Q 575 195 615 163" stroke="#F43F5E" stroke-width="2" fill="none" opacity="0.4" />
<path d="M 555 170 Q 585 192 605 170" stroke="#F43F5E" stroke-width="1.5" fill="none" opacity="0.4" />
<!-- 喉囊中隐约透出吞下的小鱼轮廓 -->
<path d="M 565 175 Q 580 185 595 175" stroke="#E11D48" stroke-width="6" stroke-linecap="round" fill="none" opacity="0.15" />
<!-- 眼睛 (生动的神态) -->
<circle cx="515" cy="105" r="9" fill="#FFFFFF" stroke="#1E293B" stroke-width="1.5" />
<circle cx="517" cy="105" r="5" fill="#0F172A" />
<circle cx="519" cy="103" r="2" fill="#FFFFFF" /> <!-- 高光 -->
<!-- 喜悦的眉毛 -->
<path d="M 506 94 Q 518 88 528 97" stroke="#1E293B" stroke-width="2.5" stroke-linecap="round" fill="none" />
<!-- 帅气的金色复古飞行员墨镜 -->
<g id="sunglasses" filter="url(#softShadow)">
<path d="M 510 102 Q 525 101 522 115 Q 511 116 508 107 Z" fill="#F59E0B" stroke="#B45309" stroke-width="1.5" opacity="0.85" />
<path d="M 526 104 Q 538 103 534 117 Q 525 118 523 109 Z" fill="#F59E0B" stroke="#B45309" stroke-width="1.5" opacity="0.85" />
<line x1="519" y1="106" x2="526" y2="107" stroke="#B45309" stroke-width="2" />
<path d="M 511 104 Q 518 103 520 112" stroke="#FFF" stroke-width="1.5" stroke-linecap="round" fill="none" opacity="0.6" /> <!-- 墨镜反光 -->
</g>
<!-- ==================== 自行车前部与配件 ==================== -->
<!-- 前车轮 -->
<g id="front-wheel">
<circle cx="680" cy="520" r="110" fill="none" stroke="#1E293B" stroke-width="18" />
<circle cx="680" cy="520" r="100" fill="none" stroke="#FEF08A" stroke-width="8" />
<circle cx="680" cy="520" r="91" fill="none" stroke="url(#chromeGrad)" stroke-width="6" />
<g stroke="#E2E8F0" stroke-width="1.5" opacity="0.7">
<line x1="680" y1="410" x2="680" y2="630" />
<line x1="570" y1="520" x2="790" y2="520" />
<line x1="602" y1="442" x2="758" y2="598" />
<line x1="602" y1="598" x2="758" y2="442" />
<line x1="630" y1="425" x2="730" y2="615" />
<line x1="730" y1="425" x2="630" y2="615" />
<line x1="575" y1="470" x2="785" y2="570" />
<line x1="575" y1="570" x2="785" y2="470" />
</g>
<circle cx="680" cy="520" r="16" fill="url(#chromeGrad)" />
<!-- 前泥除 -->
<path d="M 625 435 A 115 115 0 0 1 765 470" stroke="url(#mintGrad)" stroke-width="12" fill="none" stroke-linecap="round" />
<line x1="680" y1="520" x2="760" y2="475" stroke="url(#chromeGrad)" stroke-width="3" />
</g>
<!-- 前叉 (前轮中心连接至车头) -->
<path d="M 610 320 L 620 350 L 680 520" stroke="url(#mintGrad)" stroke-width="14" stroke-linecap="round" fill="none" />
<path d="M 610 320 L 620 350 L 680 520" stroke="url(#chromeGrad)" stroke-width="4" stroke-linecap="round" fill="none" opacity="0.3" />
<!-- 车把立管与复古弯把 -->
<path d="M 610 320 L 605 250" stroke="url(#chromeGrad)" stroke-width="10" stroke-linecap="round" fill="none" />
<!-- 车把横梁 (向后弯曲延伸) -->
<path d="M 605 250 Q 580 230 535 255" stroke="url(#chromeGrad)" stroke-width="8" stroke-linecap="round" fill="none" />
<!-- 橡胶把套 -->
<path d="M 540 252 Q 532 257 528 260" stroke="#1E293B" stroke-width="12" stroke-linecap="round" fill="none" />
<!-- 车座 (复古皮革大弹簧车座) -->
<g id="saddle" filter="url(#softShadow)">
<!-- 金属弹簧支撑 -->
<path d="M 405 355 Q 415 375 405 385 M 430 355 Q 440 375 430 385" stroke="url(#chromeGrad)" stroke-width="4" fill="none" />
<!-- 皮革坐垫 -->
<path d="M 380 345 C 380 345 390 330 430 335 C 455 338 450 355 425 355 C 400 355 380 345 380 345 Z" fill="#78350F" />
<path d="M 385 343 C 395 335 425 339 440 342" stroke="#A16207" stroke-width="2" fill="none" /> <!-- 坐垫高光线 -->
</g>
<!-- ==================== 鹈鹕前景部分 (前肢、前腿、围巾) ==================== -->
<!-- 右腿 (踏在近端脚踏板上,腿部弯曲用力) -->
<g id="near-leg" filter="url(#softShadow)">
<!-- 大腿羽毛 -->
<path d="M 430 410 Q 460 440 445 465" stroke="#F8FAFC" stroke-width="22" stroke-linecap="round" fill="none" />
<!-- 橙色小腿 -->
<path d="M 445 465 L 515 560" stroke="#F97316" stroke-width="11" stroke-linecap="round" fill="none" />
<!-- 骨节细节 -->
<circle cx="445" cy="465" r="7" fill="#EA580C" />
<!-- 踏在脚踏板上的鸭蹼足 -->
<path d="M 515 560 Q 545 550 565 558 L 555 582 Q 530 585 510 568 Z" fill="#EA580C" />
<!-- 蹼足褶皱 -->
<path d="M 515 560 L 565 558 M 512 566 L 558 575" stroke="#9A3412" stroke-width="2.5" />
</g>
<!-- 近端脚踏板 -->
<g id="near-pedal" filter="url(#softShadow)">
<!-- 曲柄 -->
<line x1="480" y1="520" x2="515" y2="560" stroke="url(#chromeGrad)" stroke-width="8" stroke-linecap="round" />
<circle cx="480" cy="520" r="10" fill="url(#chromeGrad)" />
<!-- 脚踏 -->
<rect x="500" y="555" width="35" height="12" rx="4" fill="#1E293B" stroke="#475569" stroke-width="2" />
</g>
<!-- 右侧翅膀 (伸向前方,稳稳抓握住车把) -->
<path d="M 450 335 C 485 320 520 295 545 258 C 540 270 525 295 485 335 C 500 320 535 285 540 262 C 525 295 490 345 440 355 Z" fill="#F8FAFC" filter="url(#softShadow)" />
<!-- 羽翅末端包裹车把把手 -->
<path d="M 545 258 C 548 253 538 248 532 258 C 525 268 535 272 542 262 Z" fill="#E2E8F0" />
<!-- 迎风飘扬的红白条纹围巾 -->
<g id="scarf" filter="url(#softShadow)">
<!-- 脖子上的围巾圈 -->
<path d="M 478 205 Q 495 195 508 212 Q 495 228 478 215 Z" fill="#DC2626" />
<!-- 飘带 1 (主飘带,大波浪) -->
<path d="M 478 210 C 410 195 345 225 270 195 C 320 240 390 220 478 218 Z" fill="#DC2626" />
<!-- 飘带 2 (副飘带,色调略暗体现立体感) -->
<path d="M 482 216 C 420 220 365 260 290 245 C 330 280 400 250 482 224 Z" fill="#991B1B" />
<!-- 围巾白条纹装饰 -->
<g stroke="#F8FAFC" stroke-width="5" fill="none" opacity="0.9" stroke-linecap="round">
<!-- 圈上的条纹 -->
<path d="M 488 200 L 493 218" />
<!-- 飘带 1 的条纹 -->
<path d="M 315 204 L 322 225" />
<path d="M 360 207 L 368 227" />
<path d="M 410 210 L 418 226" />
<!-- 飘带 2 的条纹 -->
<path d="M 330 247 L 338 268" stroke-width="4" opacity="0.7" />
<path d="M 380 245 L 388 264" stroke-width="4" opacity="0.7" />
<path d="M 430 238 L 438 254" stroke-width="4" opacity="0.7" />
</g>
<!-- 围巾流苏 -->
<path d="M 270 195 L 260 190 M 270 198 L 258 196 M 271 203 L 260 205" stroke="#DC2626" stroke-width="2" />
<path d="M 290 245 L 280 242 M 290 249 L 278 250 M 291 254 L 280 258" stroke="#991B1B" stroke-width="2" />
</g>
<!-- ==================== 前置藤编车筐与里面的小鱼 ==================== -->
<g id="basket-group" filter="url(#softShadow)">
<!-- 车筐挂架 -->
<path d="M 605 255 L 635 265 M 615 300 L 635 305" stroke="url(#chromeGrad)" stroke-width="4" />
<!-- 篮子里的鱼儿 (充满童趣与故事性) -->
<!-- 鱼儿 1 (朝天看,带着惊讶的逗趣表情) -->
<g id="fish1">
<path d="M 630 270 Q 642 225 655 242 Q 662 260 645 270 Z" fill="#94A3B8" />
<!-- 鱼肚白 -->
<path d="M 630 270 Q 642 245 645 270" fill="#E2E8F0" />
<!-- 鱼鳃与大圆眼 -->
<circle cx="642" cy="246" r="4" fill="#FFF" />
<circle cx="642" cy="246" r="2" fill="#000" />
<!-- 惊讶的小嘴 -->
<ellipse cx="637" cy="242" rx="1.5" ry="2" fill="#334155" />
</g>
<!-- 鱼儿 2 (倒挂在篮边,露出一截欢快的鱼尾) -->
<g id="fish2">
<path d="M 665 265 L 682 215 C 672 210 692 200 692 210 L 685 265 Z" fill="#475569" />
<!-- 尾鳍条纹 -->
<path d="M 678 212 L 686 205 M 683 213 L 691 206" stroke="#1E293B" stroke-width="1" />
</g>
<!-- 藤编车筐主体 -->
<rect x="625" y="260" width="75" height="65" rx="8" fill="#D97706" stroke="#92400E" stroke-width="3" />
<!-- 藤编经纬纹理线 -->
<g stroke="#78350F" stroke-width="2" opacity="0.6">
<!-- 横线 -->
<line x1="625" y1="273" x2="700" y2="273" />
<line x1="625" y1="286" x2="700" y2="286" />
<line x1="625" y1="299" x2="700" y2="299" />
<line x1="625" y1="312" x2="700" y2="312" />
<!-- 竖线 -->
<line x1="638" y1="260" x2="638" y2="325" />
<line x1="651" y1="260" x2="651" y2="325" />
<line x1="664" y1="260" x2="664" y2="325" />
<line x1="677" y1="260" x2="677" y2="325" />
<line x1="690" y1="260" x2="690" y2="325" />
</g>
</g>
<!-- ==================== 前景动感细节层 ==================== -->
<!-- 迎面吹来的海风线 (增加动感与空间感) -->
<g stroke="#FFF" stroke-linecap="round" fill="none" opacity="0.3">
<path d="M 180 260 Q 230 240 280 270" stroke-width="2.5" />
<path d="M 760 330 Q 810 310 860 340" stroke-width="2" />
<path d="M 120 490 Q 180 475 240 500" stroke-width="2.5" />
<path d="M 680 180 Q 720 170 760 195" stroke-width="1.5" />
</g>
<!-- 车轮滚过沙滩激起的一丁点小金色沙尘 (生动感) -->
<g fill="#FEF08A" opacity="0.8">
<!-- 后轮沙尘 -->
<circle cx="215" cy="620" r="3" />
<circle cx="200" cy="626" r="2.5" />
<circle cx="225" cy="615" r="2" />
<!-- 前轮沙尘 -->
<circle cx="585" cy="624" r="3" />
<circle cx="572" cy="628" r="2.5" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 20 KiB