Skip to content

nygula/Taoda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Taoda 套打软件使用说明

软件简介

Taoda 是一个基于 Avalonia UI 开发的跨平台套打软件,采用现代化的 MVVM 架构模式。软件能够读取 Excel 文件中的数据,结合 Word 模板批量生成多个 Word 文档,主要用于批量文档生成场景,如批量合同生成、批量证书制作等。

核心功能

  • 📊 Excel 数据读取: 支持 .xlsx 和 .xls 格式文件
  • 📄 Word 模板处理: 支持 .docx 格式模板文件
  • 🔄 变量自动匹配: 智能匹配 Excel 列标题与 Word 模板变量
  • 📁 批量文档生成: 一键生成多个填充数据的 Word 文档
  • 🎯 实时预览: 数据预览和变量匹配状态显示
  • 📈 进度跟踪: 详细的处理进度和状态反馈

技术架构

开发框架

  • 目标框架: .NET 9.0
  • UI 框架: Avalonia UI 11.3.7
  • 架构模式: MVVM (Model-View-ViewModel)

核心组件

UI 相关组件

组件名称 版本 用途
Avalonia 11.3.7 跨平台 UI 框架,提供现代化的用户界面
Avalonia.Themes.Fluent 11.3.7 Fluent Design 主题,提供现代化的视觉效果
Avalonia.Fonts.Inter 11.3.7 Inter 字体支持,提供优秀的文字显示效果
Semi.Avalonia 11.3.7 Semi Design 主题库,提供丰富的 UI 组件

MVVM 框架

组件名称 版本 用途
CommunityToolkit.Mvvm 8.4.0 现代化的 MVVM 框架,提供源生成器支持

文件处理组件

组件名称 版本 用途
MiniExcel 1.41.4 轻量级 Excel 读写库,支持高性能数据处理
MiniWords 1.0.16 轻量级 Word 文档处理库,支持模板填充

依赖注入

组件名称 版本 用途
Microsoft.Extensions.DependencyInjection 8.0.0 依赖注入容器,管理服务生命周期

诊断工具

组件名称 版本 用途
Avalonia.Diagnostics 11.3.7 开发时诊断工具(仅 Debug 模式)

项目结构

Taoda/
├── Assets/                 # 资源文件
├── Converters/            # 数据转换器
├── Models/                # 数据模型
│   ├── ExcelDataModel.cs     # Excel 数据模型
│   ├── TemplateModel.cs      # 模板模型
│   └── VariableMatchingModel.cs # 变量匹配模型
├── Services/              # 服务层
│   ├── IExcelService.cs      # Excel 服务接口
│   ├── ExcelService.cs       # Excel 服务实现
│   ├── IWordService.cs       # Word 服务接口
│   ├── WordService.cs        # Word 服务实现
│   └── FileDialogService.cs  # 文件对话框服务
├── ViewModels/            # 视图模型
│   └── MainViewModel.cs      # 主视图模型
├── Views/                 # 视图
│   └── MainView.axaml        # 主视图
├── App.axaml             # 应用程序样式
├── App.axaml.cs          # 应用程序入口
└── Taoda.csproj          # 项目配置文件

使用方法

1. 准备数据文件

Excel 数据文件要求

  • 支持格式:.xlsx.xls
  • 第一行必须是列标题(变量名)
  • 后续行为数据记录
  • 变量名应与 Word 模板中的占位符对应

示例 Excel 结构:

| 姓名   | 年龄 | 部门     | 职位     |
|--------|------|----------|----------|
| 张三   | 28   | 技术部   | 工程师   |
| 李四   | 32   | 销售部   | 经理     |

Word 模板文件要求

  • 支持格式:.docx
  • 使用 {{变量名}} 格式作为占位符
  • 变量名应与 Excel 列标题对应

示例模板内容:

员工信息表

姓名:{{姓名}}
年龄:{{年龄}}
部门:{{部门}}
职位:{{职位}}

2. 操作步骤

  1. 选择 Excel 文件

    • 点击"选择 Excel 文件"按钮
    • 选择包含数据的 Excel 文件
    • 系统会自动读取并显示数据预览
  2. 选择 Word 模板

    • 点击"选择 Word 模板"按钮
    • 选择包含占位符的 Word 模板文件
    • 系统会自动扫描模板中的变量
  3. 查看变量匹配

    • 系统会自动匹配 Excel 列标题与模板变量
    • 在"变量匹配"标签页查看匹配结果
    • 确认匹配状态是否正确
  4. 选择输出目录

    • 点击"选择输出目录"按钮
    • 选择生成文档的保存位置
  5. 开始生成

    • 点击"开始生成"按钮
    • 观察进度条和状态信息
    • 等待生成完成

3. 界面说明

主界面布局

  • 文件选择区域: 选择 Excel 文件、Word 模板和输出目录
  • 数据预览区域:
    • Excel 数据预览标签页
    • 模板变量标签页
    • 变量匹配标签页
  • 操作区域: 生成按钮和进度条
  • 状态栏: 显示当前操作状态和结果信息

状态指示

  • 🟢 就绪: 系统准备就绪,等待操作
  • 🟡 处理中: 正在处理文件或生成文档
  • 🔴 错误: 操作失败,查看错误信息
  • 完成: 操作成功完成

系统要求

运行环境

  • 操作系统: Windows 10/11, macOS 10.15+, Linux (支持 .NET 9.0)
  • .NET 运行时: .NET 9.0 Runtime
  • 内存: 建议 4GB 以上
  • 磁盘空间: 100MB 以上可用空间

文件格式支持

  • Excel 输入: .xlsx, .xls
  • Word 模板: .docx
  • Word 输出: .docx

常见问题

Q: 为什么选择的 Excel 文件无法读取?

A: 请检查:

  • 文件格式是否为 .xlsx 或 .xls
  • 文件是否被其他程序占用
  • 文件是否损坏或加密

Q: Word 模板中的变量没有被识别?

A: 请确认:

  • 占位符格式是否为 {{变量名}}
  • 变量名是否与 Excel 列标题完全一致
  • 模板文件是否为 .docx 格式

Q: 生成的文档数量不正确?

A: 请检查:

  • Excel 数据是否包含空行
  • 数据行数是否与预期一致
  • 输出目录是否有足够的磁盘空间

Q: 程序运行缓慢或卡顿?

A: 建议:

  • 处理大量数据时请耐心等待
  • 确保系统有足够的可用内存
  • 关闭不必要的其他程序

技术特性

性能优化

  • 异步处理: 所有文件操作均采用异步模式,保持界面响应
  • 内存管理: 智能内存管理,支持大文件处理
  • 批量处理: 高效的批量文档生成算法

用户体验

  • 实时反馈: 详细的进度信息和状态更新
  • 错误处理: 友好的错误提示和异常处理
  • 界面响应: 现代化的 UI 设计,流畅的交互体验

扩展性

  • 模块化设计: 清晰的分层架构,易于维护和扩展
  • 接口抽象: 基于接口的服务设计,支持功能扩展
  • 配置灵活: 支持多种文件格式和自定义配置

开发信息

构建要求

  • 开发环境: Visual Studio 2022 或 JetBrains Rider
  • SDK: .NET 9.0 SDK
  • 包管理: NuGet

构建命令

# 还原依赖包
dotnet restore

# 构建项目
dotnet build

# 运行项目
dotnet run --project Taoda.Desktop

# 发布项目
dotnet publish -c Release -r win-x64 --self-contained

许可证

本软件遵循相应的开源许可证,具体信息请查看项目根目录下的 LICENSE 文件。

联系方式

如有问题或建议,请通过以下方式联系:

  • 项目仓库:[GitHub 链接]
  • 问题反馈:[Issues 链接]
  • 技术支持:[联系邮箱]

最后更新时间:2024年10月

About

Taoda 套打软件使用说明 软件简介 Taoda 是一个基于 Avalonia UI 开发的跨平台套打软件,采用现代化的 MVVM 架构模式。软件能够读取 Excel 文件中的数据,结合 Word 模板批量生成多个 Word 文档,主要用于批量文档生成场景,如批量合同生成、批量证书制作等。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages