数据和图片准备

English

Sheet to Doc 是一个功能强大的工具,可以自动将 Excel, CSV, JSON, JSONL数据写入docx格式的Word模版,批量的转换为Word文档。

在邮件合并的基础上,本工具开发了更多功能,比如自定义文件名,自定义文件路径,嵌入图片等等等等。

备注

本页面内容较长,我们建议您结合页面左侧的目录来浏览本页面内容,以方便您了解页面结构。

数据准备

在使用 Sheet-to-Doc 之前,您需要准备包含要转换为文档的数据。

我们接受多种格式的数据

  • Tab分隔符分隔的Excel数据,也就是最常规的Excel文件

  • 逗号分隔的Excel数据,也就是CSV文件

  • JSON

  • JSONL

数据内容

至少应当包含两行一列数据。

  • Tab分隔符分隔的Excel数据

    • 第一行为标题行,

    • 后续行为数据行。

  • 逗号分隔的CSV数据

    • 第一行为标题行,

    • 后续行为数据行。

  • JSON

    • 应当是一个数组,数组中至少有一个元素

    • 数组中的每个元素都是一个JSON对象

    • 每个JSON至少有一个对象的键(key)和值(value)。

  • JSONL

    • 至少一个数据行

    • 每个数据行都是一个独立的JSON对象,

    • 每个JSON对象至少有一个键(key)和值(value)。

标题行数据类型要求

  • Tab分隔符分隔的Excel数据及CSV

    • 标题行中的每个单元格都必须为文本格式(数字、布尔值之外的数据类型会被考虑成文本字符串)

    • 标题行中的每个单元格都不能为空文本(也就是没有内容)

    • 标题行单元格内容可以是中文、英文,理论上也支持其他语言文字

    • 标题行单个单元格内容不推荐包含空字符(空格、制表符等)

    • 标题行单元格与单元格的内容之间不可重复,否侧会导致数据丢失

    • 标题行内容不含特殊字符(空格,@,-,(),[],{},#,$,+,-,*,/,%,=,<,>,!,&,|,^,~,?,:,;,.,’,”,`,\)

    • 标题行内容包含点(.)会被特殊处理成1层嵌套结构,(可以通过下方的简单数据示例和复杂数据示例来理解差异)。建议新手避开使用点(.)。

  • JSON和JSONL

    • 每个JSON对象的键(key)必须是文本字符串格式

    • 每个JSON对象的键(key)不推荐包含空字符(空格、制表符等)

    • 每个JSON对象的键(key)与键(key)之间不可重复

    • 每个JSON对象的键(key)内容不含特殊字符(空格,@,-,(),[],{},#,$,+,-,*,/,%,=,<,>,!,&,|,^,~,?,:,;,.,’,”,`,\)

    • 允许1层嵌套结构,(可以通过下方的简单数据示例和复杂数据示例来理解差异)。建议新手避开嵌套结构数据。

数据行数据类型要求

  • Tab分隔符分隔的Excel数据及CSV

    • 数据行中的每个单元格都必须包含文本(除了数字和布尔值都会被考虑为文本)、数字或布尔值

    • 数据行中的部分单元格可以为空(也就是没有内容)

  • JSON和JSONL

    • 每个JSON对象的值(value)可以是任何JSON支持的数据类型

    • 每个JSON对象的值(value)可以为空(也就是没有内容)

注意

如果数据单元格中的数字大于10^12(1,000,000,000,000),它将被视为文本字符串。

简单的数据示例

警告

推荐新手使用简单数据示例,复杂数据示例仅在复杂的模版处理时需要,大部分的应用场景可以通过简单数据实现。

  • Tab分隔符分隔的Excel数据

    姓名    年龄    性别
    张三    25    
    李四    30    
  • 逗号分隔的Excel数据

    姓名,年龄,性别
    张三,25,
    李四,30,
  • JSON

    [
        {"姓名": "张三", "年龄": 25, "性别": "男"},
        {"姓名": "李四", "年龄": 30, "性别": "女"}
    ]
  • JSONL

    {"姓名": "张三", "年龄": 25, "性别": "男"}
    {"姓名": "李四", "年龄": 30, "性别": "女"}

复杂的数据示例

相较于简单的数据示例,复杂的数据示例(Tab分隔和逗号分隔)在标题行和数据行中都包含了分隔符点(.),这会被特殊处理成1层嵌套结构。也就是最高级数据是个人信息,下一级数据包含姓名,年龄,性别,城市。

警告

推荐新手使用简单数据示例,复杂数据示例仅在复杂的模版处理时需要,大部分的应用场景可以通过简单数据实现。

  • Tab分隔符分隔的Excel数据

    个人信息.姓名   个人信息.年龄    个人信息.性别    个人信息.城市
    张三    25        北京
    李四    30        上海
  • 逗号分隔的Excel数据

    个人信息.姓名,个人信息.年龄,个人信息.性别,个人信息.城市
    张三,25,,北京
    李四,30,,上海
  • JSON

    [
        {"个人信息": {"姓名": "张三", "年龄": 25, "性别": "男", "城市": "北京"}},
        {"个人信息": {"姓名": "李四", "年龄": 30, "性别": "女", "城市": "上海"}}
    ]
  • JSONL

    {"个人信息": {"姓名": "张三", "年龄": 25, "性别": "男", "城市": "北京"}}
    {"个人信息": {"姓名": "李四", "年龄": 30, "性别": "女", "城市": "上海"}}

数据类型

Sheet-to-Doc 支持以下数据类型:

  • Tab分隔符分隔的Excel数据及CSV

    • 数字(整数、浮点数)

    • 布尔值(TRUE/FALSE)

    • 文本(字符串)(数字、布尔值之外的数据类型会被考虑成文本字符串)

  • JSON和JSONL

    • 数字(整数、浮点数)

    • 布尔值(TRUE/FALSE)

    • 文本(字符串)

    • 等…其他JSON支持的数据格式

图片准备

在使用 Sheet-to-Doc 之前,如果您希望把图片写入Word模版,那么您需要准备图片。

我们接受多种格式的图片

  • JPEG

  • PNG

  • GIF

  • BMP

  • JPG

提示

图片文件的大小不推荐超过1MB,推荐使用压缩工具压缩图片,以减小文件大小,否则生成时间会过长,出错的概率页也会增加。