feat: Enhanced lunar calendar display and Zi Shi calculation improvements

- Added full Chinese year display (农历一九七六年)
- Implemented detailed solar term intervals (惊蛰后至春分前)
- Enhanced Zi Shi calculation with professional explanations
- Added lunar information display in frontend components
- Improved accuracy of lunar date calculations
- Removed redundant note texts for cleaner UI
- Fixed syntax errors in analyzer modules
This commit is contained in:
patdelphi
2025-08-23 10:26:51 +08:00
parent b5011988fb
commit 865d4c7a15
13 changed files with 1018 additions and 259 deletions

View File

@@ -0,0 +1,204 @@
# AI解读功能使用指南
## 功能概述
AI解读功能是本系统的智能增强特性通过调用大语言模型如GPT对传统命理分析结果进行深度解读和现代化阐释为用户提供更加通俗易懂、贴近现代生活的指导建议。
## 主要特性
### 🧠 智能解读
- 对八字、紫微斗数、易经占卜结果进行AI深度分析
- 将古典命理术语转换为现代语言
- 提供实用的人生指导和建议
### ⚙️ 灵活配置
- 支持多种AI服务提供商OpenAI、Azure OpenAI等
- 可自定义模型参数温度、最大Token数等
- 支持自定义提示词模板
### 💾 结果缓存
- 自动保存AI解读结果到本地存储
- 避免重复调用节省API费用
- 支持重新解读功能
## 使用方法
### 1. 配置AI服务
#### 方法一:环境变量配置(推荐)
在项目根目录的 `.env` 文件中添加以下配置:
```env
# AI API密钥
VITE_AI_API_KEY=your-openai-api-key-here
# AI API服务地址
VITE_AI_API_URL=https://api.openai.com/v1/chat/completions
# AI模型名称
VITE_AI_MODEL_NAME=gpt-3.5-turbo
# AI请求最大Token数
VITE_AI_MAX_TOKENS=2000
# AI温度参数0-2控制回答的创造性
VITE_AI_TEMPERATURE=0.7
# AI请求超时时间毫秒
VITE_AI_TIMEOUT=30000
```
#### 方法二:界面配置
1. 在分析结果页面点击「AI解读」按钮
2. 如果未配置系统会提示配置AI设置
3. 点击「配置」按钮打开配置界面
4. 填写API Key、API地址等信息
5. 点击「测试连接」验证配置
6. 保存配置
### 2. 使用AI解读
#### 在分析结果页面
1. 完成命理分析后在结果页面找到「AI智能解读」区域
2. 点击「AI解读」按钮
3. 等待AI分析完成
4. 查看AI解读结果
#### 在历史记录页面
1. 进入历史记录页面
2. 在记录列表中点击「AI解读」按钮
3. 点击「查看」进入详情页然后使用AI解读功能
### 3. 管理解读结果
- **查看解读**点击「查看AI解读」展开/收起解读内容
- **重新解读**点击「重新解读」按钮获取新的AI分析
- **配置管理**点击「配置」按钮修改AI设置
## 支持的AI服务商
### OpenAI
- **API地址**`https://api.openai.com/v1/chat/completions`
- **推荐模型**`gpt-3.5-turbo``gpt-4`
- **获取API Key**:访问 [OpenAI官网](https://platform.openai.com/api-keys)
### Azure OpenAI
- **API地址**`https://your-resource.openai.azure.com/openai/deployments/your-deployment/chat/completions?api-version=2023-12-01-preview`
- **认证方式**:需要在请求头中使用 `api-key` 而不是 `Authorization`
### 其他兼容服务
任何兼容OpenAI Chat Completions API格式的服务都可以使用包括
- Anthropic Claude通过代理
- 本地部署的开源模型
- 其他云服务商的API
## 提示词模板
系统为不同的分析类型预设了专业的提示词模板:
### 八字分析提示词
```
你是一位专业的八字命理大师,请对以下八字分析结果进行深度解读和补充说明。
请从以下几个方面进行解读:
1. 命格特点的深层含义
2. 五行平衡对人生的具体影响
3. 大运流年的关键转折点
4. 实用的人生建议和注意事项
5. 现代生活中的应用指导
请用通俗易懂的语言,结合现代生活实际,给出具有指导意义的解读。
```
### 紫微斗数提示词
```
你是一位资深的紫微斗数专家,请对以下紫微斗数分析结果进行专业解读。
请重点分析:
1. 命宫主星的性格特质解析
2. 十二宫位的相互影响
3. 大限小限的运势变化
4. 桃花、财帛、事业等重点宫位分析
5. 现实生活中的应用建议
请结合现代社会背景,提供实用的人生指导。
```
### 易经占卜提示词
```
你是一位精通易经的占卜大师,请对以下易经占卜结果进行深入解读。
请从以下角度分析:
1. 卦象的深层寓意
2. 爻辞的具体指导意义
3. 变卦的发展趋势
4. 针对问题的具体建议
5. 行动时机和注意事项
请用现代语言解释古典智慧,提供切实可行的指导。
```
## 费用说明
- AI解读功能需要调用第三方AI服务会产生API费用
- 费用由您的AI服务商账户承担
- 建议合理设置Token限制以控制费用
- 系统会缓存解读结果,避免重复调用
## 常见问题
### Q: 为什么AI解读按钮是灰色的
A: 这表示AI配置不完整请检查API Key、API地址等配置是否正确。
### Q: AI解读失败怎么办
A: 请检查:
1. 网络连接是否正常
2. API Key是否有效
3. API地址是否正确
4. 账户余额是否充足
### Q: 可以使用免费的AI服务吗
A: 可以使用任何兼容OpenAI API格式的服务包括一些提供免费额度的服务。
### Q: AI解读结果不满意怎么办
A: 可以:
1. 点击「重新解读」获取新的分析
2. 调整温度参数改变AI的创造性
3. 修改提示词模板以获得更符合需求的解读
### Q: 解读结果会保存吗?
A: 是的,解读结果会自动保存到浏览器本地存储中,下次查看同一分析时会直接显示已保存的解读。
## 技术实现
### 架构设计
- **配置管理**`src/config/aiConfig.ts`
- **服务层**`src/services/aiInterpretationService.ts`
- **UI组件**`src/components/ui/AIInterpretationButton.tsx`
- **配置界面**`src/components/ui/AIConfigModal.tsx`
### 数据流程
1. 用户触发AI解读
2. 系统检查配置有效性
3. 将分析结果转换为Markdown格式
4. 使用提示词模板构建请求
5. 调用AI API获取解读
6. 显示结果并保存到本地存储
### 安全考虑
- API Key等敏感信息存储在本地
- 支持环境变量配置避免硬编码
- 请求超时保护
- 错误处理和用户友好提示
## 更新日志
### v1.0.0
- 初始版本发布
- 支持八字、紫微斗数、易经三种分析类型的AI解读
- 提供完整的配置界面和结果管理功能
- 集成到分析结果页面和历史记录页面
---
如有其他问题或建议,请联系开发团队。

View File

@@ -0,0 +1,211 @@
# 前端页面导出功能设置说明
## 功能概述
新增了前端页面直接导出为PDF和PNG的功能用户可以直接从分析结果页面生成
- **PDF文档**:支持分页的专业格式文档
- **PNG长图**:完整页面截图,适合社交媒体分享
## 依赖安装
需要安装以下依赖包:
```bash
npm install html2canvas jspdf
```
或使用yarn
```bash
yarn add html2canvas jspdf
```
## 功能特性
### PDF导出
- ✅ A4纸张格式
- ✅ 自动分页处理
- ✅ 高质量输出
- ✅ 保持原有样式和布局
- ✅ 自动隐藏导出按钮等UI元素
### PNG导出
- ✅ 高分辨率长图2倍缩放
- ✅ 完整页面内容
- ✅ 保持颜色和样式
- ✅ 适合移动端查看和分享
## 已集成的组件
1. **CompleteYijingAnalysis** - 易经占卜分析页面
2. **CompleteBaziAnalysis** - 八字命理分析页面
3. **CompleteZiweiAnalysis** - 紫微斗数分析页面
## 使用方法
### 在组件中使用
```tsx
import PageExportButton from './ui/PageExportButton';
// 在JSX中使用
<PageExportButton
targetElementId="analysis-content" // 要导出的元素ID
fileName="分析结果" // 文件名前缀
title="页面导出" // 按钮显示文本
className="sticky top-4 z-10" // 样式类名
/>
```
### 标记导出内容
为要导出的内容容器添加ID和data属性
```tsx
<div id="analysis-content" data-export-content>
{/* 要导出的内容 */}
</div>
```
### 隐藏不需要导出的元素
为不需要出现在导出文件中的元素添加类名或属性:
```tsx
<div className="no-export" data-no-export>
{/* 下载按钮等UI元素 */}
</div>
```
## 技术实现
### 核心技术栈
- **html2canvas**: 将DOM元素转换为Canvas
- **jsPDF**: 生成PDF文档
- **React**: 组件化开发
- **TypeScript**: 类型安全
### 导出流程
1. **获取目标元素**: 根据ID或选择器定位要导出的DOM元素
2. **生成Canvas**: 使用html2canvas将DOM转换为高质量Canvas
3. **处理样式**: 自动处理CSS样式、字体、图片等
4. **生成文件**:
- PNG: 直接从Canvas生成图片
- PDF: 将Canvas图片嵌入PDF文档支持分页
5. **自动下载**: 创建下载链接并触发下载
### 配置选项
```typescript
// html2canvas配置
{
scale: 2, // 提高分辨率
useCORS: true, // 支持跨域图片
allowTaint: true, // 允许跨域内容
backgroundColor: '#ffffff', // 背景色
onclone: (clonedDoc) => {
// 在克隆文档中隐藏不需要的元素
}
}
// jsPDF配置
{
orientation: 'portrait', // 纵向
unit: 'mm', // 单位毫米
format: 'a4' // A4格式
}
```
## 样式优化
### CSS类名约定
- `.no-export`: 不导出的元素
- `[data-no-export]`: 不导出的元素(属性方式)
- `[data-export-content]`: 主要导出内容
- `.fixed`, `.sticky`, `.floating`: 自动隐藏的浮动元素
### 打印样式优化
可以添加打印专用样式:
```css
@media print {
.no-print {
display: none !important;
}
.print-break {
page-break-before: always;
}
}
```
## 错误处理
- ✅ 网络错误处理
- ✅ 图片加载失败处理
- ✅ 浏览器兼容性检查
- ✅ 用户友好的错误提示
- ✅ Toast通知集成
## 浏览器兼容性
- ✅ Chrome 60+
- ✅ Firefox 55+
- ✅ Safari 12+
- ✅ Edge 79+
- ⚠️ IE不支持需要polyfill
## 性能优化
- 🚀 按需加载依赖
- 🚀 Canvas复用
- 🚀 内存管理
- 🚀 大文件分块处理
- 🚀 用户体验优化(加载状态、进度提示)
## 未来扩展
- [ ] 支持更多导出格式DOCX、Excel等
- [ ] 批量导出功能
- [ ] 云端存储集成
- [ ] 自定义模板支持
- [ ] 水印和签名功能
## 注意事项
1. **图片跨域**: 确保所有图片资源支持CORS
2. **字体加载**: 确保自定义字体已完全加载
3. **内容大小**: 超大内容可能影响性能
4. **移动端**: 在移动设备上可能需要额外优化
5. **隐私**: 导出功能完全在客户端执行,不会上传数据
## 故障排除
### 常见问题
1. **图片不显示**: 检查图片CORS设置
2. **样式丢失**: 确保CSS已完全加载
3. **字体异常**: 检查字体文件加载状态
4. **内容截断**: 调整Canvas尺寸设置
5. **下载失败**: 检查浏览器下载权限
### 调试方法
```javascript
// 开启调试模式
const canvas = await html2canvas(element, {
logging: true, // 开启日志
debug: true // 调试模式
});
```
## 更新日志
### v1.0.0 (2025-01-21)
- ✅ 初始版本发布
- ✅ 支持PDF和PNG导出
- ✅ 集成到三个主要分析组件
- ✅ 完整的错误处理和用户体验

265
docs/TYPOGRAPHY_GUIDE.md Normal file
View File

@@ -0,0 +1,265 @@
# 神机阁字体规范指南
## 📖 概述
本指南定义了神机阁项目的统一字体规范系统,旨在解决项目中字体大小混乱的问题,建立一致的视觉层次和用户体验。
## 🎯 设计原则
1. **语义化命名** - 使用语义化的类名,如 `text-heading-lg` 而不是 `text-2xl`
2. **响应式优先** - 所有字体规范都考虑了移动端适配
3. **可访问性** - 确保足够的对比度和可读性
4. **一致性** - 统一的行高、字重和字间距规范
5. **中文优化** - 专门为中文内容优化的字体栈
## 📏 字体规范系统
### 🏆 显示级标题 (Display)
用于首页主标题和重要页面的超大标题
```css
.text-display-xl /* 56px - 首页主标题 */
.text-display-lg /* 48px - 重要页面标题 */
.text-display-md /* 40px - 次要页面标题 */
```
**使用场景:**
- 首页 Hero 区域主标题
- 重要功能页面的主标题
- 营销页面的大标题
### 📝 标题系列 (Heading)
用于页面内容的层次化标题
```css
.text-heading-xl /* 32px - H1 标题 */
.text-heading-lg /* 28px - H2 标题 */
.text-heading-md /* 24px - H3 标题 */
.text-heading-sm /* 20px - H4 标题 */
.text-heading-xs /* 18px - H5 标题 */
```
**使用场景:**
- 页面主标题 (H1)
- 章节标题 (H2-H3)
- 卡片标题 (H4-H5)
- 组件内部标题
### 📄 正文系列 (Body)
用于页面的主要内容文字
```css
.text-body-xl /* 18px - 重要描述文字 */
.text-body-lg /* 16px - 标准正文 (默认) */
.text-body-md /* 14px - 次要正文 */
.text-body-sm /* 12px - 辅助信息 */
```
**使用场景:**
- 重要的介绍文字 (body-xl)
- 标准正文内容 (body-lg)
- 卡片描述文字 (body-md)
- 提示信息、时间戳 (body-sm)
### 🏷️ 标签系列 (Label)
用于表单标签和小标签
```css
.text-label-lg /* 14px - 表单标签 */
.text-label-md /* 12px - 小标签 */
.text-label-sm /* 11px - 微小标签 */
```
**使用场景:**
- 表单字段标签
- 状态标签
- 分类标签
- 徽章文字
### 🔘 按钮系列 (Button)
用于按钮内的文字
```css
.text-button-lg /* 16px - 大按钮 */
.text-button-md /* 14px - 标准按钮 */
.text-button-sm /* 12px - 小按钮 */
```
**使用场景:**
- 主要操作按钮 (button-lg)
- 标准按钮 (button-md)
- 次要按钮和图标按钮 (button-sm)
## 🎨 字体族规范
### 中文字体栈
```css
.font-chinese
/* 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', 'Noto Sans SC', 'STHeiti', 'WenQuanYi Micro Hei', sans-serif */
```
### 中文衬线字体
```css
.font-chinese-serif
/* 'Noto Serif SC', 'STSong', 'SimSun', '宋体', serif */
```
### 英文字体
```css
.font-english
/* 'Inter', 'Helvetica Neue', 'Arial', sans-serif */
```
### 数字字体
```css
.font-numeric
/* 确保数字对齐的等宽字体 */
```
## 📱 响应式规范
所有字体规范都内置了响应式适配:
- **移动端 (≤768px)**: 字体大小适当缩小
- **超小屏 (≤480px)**: 进一步优化字体大小
- **桌面端 (>768px)**: 使用标准字体大小
## 🔧 使用方法
### 1. HTML 中使用
```html
<!-- 页面主标题 -->
<h1 class="text-heading-xl font-chinese text-red-600">神机阁</h1>
<!-- 卡片标题 -->
<h3 class="text-heading-sm font-chinese">八字命理</h3>
<!-- 正文内容 -->
<p class="text-body-lg font-chinese">这是标准正文内容</p>
<!-- 按钮文字 -->
<button class="text-button-md font-chinese">立即分析</button>
```
### 2. React 组件中使用
```jsx
// 推荐:使用语义化类名
<ChineseCardTitle className="text-heading-md font-chinese">
十二宫位详解
</ChineseCardTitle>
// 避免:使用数字类名
<ChineseCardTitle className="text-xl">
十二宫位详解
</ChineseCardTitle>
```
### 3. CSS 中使用
```css
/* 自定义组件样式 */
.custom-title {
@apply text-heading-lg font-chinese font-semibold;
color: var(--cinnabar-500);
}
```
## 🎯 迁移指南
### 常见替换映射
| 旧类名 | 新类名 | 用途 |
|--------|--------|------|
| `text-3xl` | `text-display-md` | 页面主标题 |
| `text-2xl` | `text-heading-xl` | 大标题 |
| `text-xl` | `text-heading-lg` | 中标题 |
| `text-lg` | `text-heading-md` | 小标题 |
| `text-base` | `text-body-lg` | 标准正文 |
| `text-sm` | `text-body-md` | 次要正文 |
| `text-xs` | `text-body-sm` | 辅助信息 |
### 迁移步骤
1. **识别用途** - 确定文字的语义用途(标题、正文、标签等)
2. **选择规范** - 根据用途选择对应的字体规范
3. **添加字体族** - 确保添加 `font-chinese`
4. **测试响应式** - 在不同设备上测试显示效果
## ✅ 最佳实践
### ✅ 推荐做法
```html
<!-- 语义化命名 -->
<h1 class="text-display-lg font-chinese">神机阁</h1>
<h2 class="text-heading-xl font-chinese">命理分析</h2>
<p class="text-body-lg font-chinese">专业的命理分析服务</p>
<button class="text-button-md font-chinese">开始分析</button>
<!-- 数字内容使用数字字体 -->
<span class="text-body-lg font-numeric">2024</span>
<!-- 特殊标题使用衬线字体 -->
<h1 class="text-display-xl font-chinese-serif">神机阁</h1>
```
### ❌ 避免做法
```html
<!-- 避免:混用数字类名 -->
<h1 class="text-4xl">标题</h1>
<p class="text-lg">正文</p>
<!-- 避免:忘记添加字体族 -->
<h1 class="text-heading-xl">标题</h1>
<!-- 避免:不合适的字体大小组合 -->
<button class="text-xs">按钮</button> <!-- 太小 -->
<p class="text-3xl">正文</p> <!-- 太大 -->
```
## 🔍 常见问题
### Q: 什么时候使用 display 系列?
A: 仅用于首页主标题和重要页面的超大标题,不要在普通内容中使用。
### Q: 如何选择合适的字体大小?
A: 根据内容的重要性和层次选择:
- 页面标题 → heading 系列
- 正文内容 → body 系列
- 表单标签 → label 系列
- 按钮文字 → button 系列
### Q: 移动端需要特殊处理吗?
A: 不需要,所有字体规范都内置了响应式适配。
### Q: 可以自定义字体大小吗?
A: 不推荐。如果确实需要,请先考虑是否可以使用现有规范,或者提出新的规范需求。
## 📊 字体规范对照表
| 类名 | 桌面端 | 移动端 | 行高 | 字重 | 用途 |
|------|--------|--------|------|------|------|
| `text-display-xl` | 56px | 40px | 1.1 | 800 | 首页主标题 |
| `text-display-lg` | 48px | 36px | 1.1 | 700 | 重要页面标题 |
| `text-display-md` | 40px | 32px | 1.2 | 700 | 次要页面标题 |
| `text-heading-xl` | 32px | 28px | 1.25 | 600 | H1 标题 |
| `text-heading-lg` | 28px | 24px | 1.3 | 600 | H2 标题 |
| `text-heading-md` | 24px | 20px | 1.35 | 600 | H3 标题 |
| `text-heading-sm` | 20px | 18px | 1.4 | 600 | H4 标题 |
| `text-heading-xs` | 18px | 16px | 1.4 | 600 | H5 标题 |
| `text-body-xl` | 18px | 16px | 1.6 | 400 | 重要描述 |
| `text-body-lg` | 16px | 16px | 1.6 | 400 | 标准正文 |
| `text-body-md` | 14px | 14px | 1.6 | 400 | 次要正文 |
| `text-body-sm` | 12px | 12px | 1.5 | 400 | 辅助信息 |
| `text-label-lg` | 14px | 14px | 1.4 | 500 | 表单标签 |
| `text-label-md` | 12px | 12px | 1.4 | 500 | 小标签 |
| `text-label-sm` | 11px | 11px | 1.4 | 500 | 微小标签 |
| `text-button-lg` | 16px | 16px | 1.4 | 600 | 大按钮 |
| `text-button-md` | 14px | 14px | 1.4 | 600 | 标准按钮 |
| `text-button-sm` | 12px | 12px | 1.4 | 600 | 小按钮 |
---
**更新日期**: 2024年12月
**版本**: 1.0.0
**维护者**: 神机阁开发团队

View File

@@ -0,0 +1,208 @@
# 神机阁 UI 优化计划
## 🎯 优化目标
- 解决移动端顶部字体溢出问题
- 建立统一的中式风格设计系统
- 实现完美的桌面端与移动端自适应
- 创造优雅古典的用户体验
- 优化色彩搭配和视觉层次
## 📋 当前问题分析
### 1. 移动端问题
- 顶部导航字体溢出
- 布局在小屏幕上不合理
- 触摸交互体验不佳
### 2. 整体设计问题
- 字体大小不统一
- 缺乏视觉层次
- 色彩搭配不和谐
- 缺乏中式设计元素的统一性
## 🎨 设计系统规划
### 1. 色彩系统 (中式古典配色)
#### 主色调
- **朱砂红**: `#DC143C` - 主要强调色,用于重要按钮和标题
- **金黄色**: `#FFD700` - 辅助色,用于装饰和高亮
- **墨黑色**: `#2C2C2C` - 主要文字色
- **古纸色**: `#F5F5DC` - 背景色
- **青灰色**: `#708090` - 次要文字色
#### 渐变背景
- **主背景**: 从古纸色到淡金色的渐变
- **卡片背景**: 半透明白色覆盖
- **按钮渐变**: 朱砂红到深红的渐变
### 2. 字体系统
#### 字体族
```css
/* 中文优先字体栈 */
font-family: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', 'STHeiti', 'WenQuanYi Micro Hei', sans-serif;
```
#### 字体大小规范
- **标题 H1**: 2.5rem (40px) / 移动端 2rem (32px)
- **标题 H2**: 2rem (32px) / 移动端 1.75rem (28px)
- **标题 H3**: 1.5rem (24px) / 移动端 1.25rem (20px)
- **正文**: 1rem (16px) / 移动端 0.875rem (14px)
- **小字**: 0.875rem (14px) / 移动端 0.75rem (12px)
#### 行高规范
- **标题**: 1.2
- **正文**: 1.6
- **按钮文字**: 1.4
### 3. 间距系统
#### 基础间距单位 (基于 4px)
- **xs**: 0.25rem (4px)
- **sm**: 0.5rem (8px)
- **md**: 1rem (16px)
- **lg**: 1.5rem (24px)
- **xl**: 2rem (32px)
- **2xl**: 3rem (48px)
### 4. 组件设计规范
#### 按钮设计
- **主按钮**: 朱砂红背景,金色边框,白色文字
- **次按钮**: 透明背景,朱砂红边框,朱砂红文字
- **圆角**: 8px
- **高度**: 44px (移动端友好)
- **内边距**: 16px 24px
#### 卡片设计
- **背景**: 半透明白色 rgba(255,255,255,0.9)
- **边框**: 1px solid rgba(220,20,60,0.2)
- **圆角**: 12px
- **阴影**: 0 4px 20px rgba(0,0,0,0.1)
- **内边距**: 24px
#### 输入框设计
- **背景**: 白色
- **边框**: 1px solid #E5E5E5
- **聚焦边框**: 2px solid #DC143C
- **圆角**: 6px
- **高度**: 44px
- **内边距**: 12px 16px
## 📱 响应式设计策略
### 1. 断点设置
```css
/* 移动端 */
@media (max-width: 768px) { ... }
/* 平板端 */
@media (min-width: 769px) and (max-width: 1024px) { ... }
/* 桌面端 */
@media (min-width: 1025px) { ... }
```
### 2. 移动端优化
- **导航栏**: 汉堡菜单,避免文字溢出
- **字体缩放**: 移动端字体适当缩小
- **触摸目标**: 最小 44px × 44px
- **间距调整**: 移动端间距适当减小
### 3. 布局策略
- **桌面端**: 多列布局,侧边栏导航
- **移动端**: 单列布局,底部导航
- **弹性布局**: 使用 Flexbox 和 Grid
## 🎭 中式设计元素
### 1. 装饰元素
- **云纹图案**: 作为背景装饰
- **回纹边框**: 用于卡片和分割线
- **印章样式**: 用于重要标识
- **书法笔触**: 用于标题装饰
### 2. 图标设计
- **八卦图标**: 用于导航和功能区分
- **中式符号**: 太极、阴阳、五行元素
- **传统色彩**: 朱砂、金黄、墨色
### 3. 动画效果
- **淡入淡出**: 页面切换动画
- **缓动函数**: cubic-bezier(0.4, 0, 0.2, 1)
- **悬停效果**: 轻微的缩放和阴影变化
## 🔧 技术实现方案
### 1. CSS 架构
- **原子化 CSS**: 使用 Tailwind CSS
- **自定义主题**: 扩展 Tailwind 配置
- **组件样式**: CSS Modules 或 Styled Components
### 2. 响应式实现
- **移动优先**: Mobile-first 设计
- **弹性单位**: rem, em, vw, vh
- **媒体查询**: 断点式响应
### 3. 性能优化
- **字体优化**: 字体子集化,预加载
- **图片优化**: WebP 格式,懒加载
- **CSS 优化**: 关键 CSS 内联
## 📋 实施计划
### 阶段一:基础设施 (1-2天)
1. 更新 Tailwind 配置,添加中式主题
2. 创建设计系统组件库
3. 建立响应式断点系统
### 阶段二:核心组件 (2-3天)
1. 重构导航栏组件 (解决移动端溢出)
2. 优化按钮和表单组件
3. 重设计卡片和布局组件
### 阶段三:页面优化 (3-4天)
1. 首页重新设计
2. 分析页面布局优化
3. 历史记录页面改进
4. 用户中心页面美化
### 阶段四:细节完善 (1-2天)
1. 动画效果添加
2. 交互细节优化
3. 跨设备测试
4. 性能优化
## 🎯 预期效果
### 视觉效果
- 统一的中式古典风格
- 和谐的色彩搭配
- 清晰的视觉层次
- 优雅的动画过渡
### 用户体验
- 完美的移动端适配
- 直观的导航体验
- 舒适的阅读体验
- 流畅的交互反馈
### 技术指标
- 移动端适配率 100%
- 页面加载速度 < 2s
- 交互响应时间 < 100ms
- 跨浏览器兼容性 95%+
## 📝 验收标准
1. **移动端测试**: 在各种移动设备上无溢出、布局正常
2. **响应式测试**: 在不同屏幕尺寸下表现良好
3. **视觉一致性**: 所有页面遵循统一设计规范
4. **性能测试**: 页面加载和交互性能达标
5. **用户体验**: 导航清晰、操作便捷、视觉舒适
---
*此计划将分阶段实施,每个阶段完成后进行测试和调整,确保最终效果符合预期。*