miniword使用

快速开始

/// <summary>
/// 快速开始
/// </summary>
static void QuickStart()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>() { ["Title"] = "我是标题" };
    MiniSoftware.MiniWord.SaveAsByTemplate(Path.Combine(output, "001.docx"), Path.Combine(baseDir, "words", "001.docx"), value);
    Console.WriteLine("快速开始成功");
}

模板
在这里插入图片描述
结果
在这里插入图片描述

插入图片

/// <summary>
/// 插入图片
/// </summary>
static void InsertImg()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>()
    {
        ["img"] = new MiniWordPicture() { Path = Path.Combine(baseDir, "words", "002.jpg"), Width = 180, Height = 180 }
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "002.docx"), Path.Combine(baseDir, "words", "002.docx"), value);
    Console.WriteLine("插入图片成功");
}

在这里插入图片描述

在这里插入图片描述

插入列表

/// <summary>
/// 插入列表
/// </summary>
static void InsertList()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>()
    {
        ["managers"] = new[] { "Jack", "Alan" },
        ["employees"] = new[] { "Mike", "Henry" },
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "003.docx"), Path.Combine(baseDir, "words", "003.docx"), value);
    Console.WriteLine("插入列表成功");
}

在这里插入图片描述
在这里插入图片描述

插入表格

/// <summary>
/// 插入表格
/// </summary>
static void InsertTable()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>()
    {
        ["TripHs"] = new List<Dictionary<string, object>>
        {
            new Dictionary<string, object>
            {
                { "Start",DateTime.Now},
                { "End",DateTime.Now.AddDays(30)},
                { "Send","王小明"},
                { "Photo",new MiniWordPicture() { Path = Path.Combine(baseDir, "words", "002.jpg"), Width = 160, Height = 160 }},
            },
            new Dictionary<string, object>
            {
                { "Start",DateTime.Now},
                { "End",DateTime.Now.AddDays(30)},
                { "Send","朱大力"},
                { "Photo",new MiniWordPicture() { Path = Path.Combine(baseDir, "words", "002.jpg"), Width = 160, Height = 160 }},
            },
        }
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "004.docx"), Path.Combine(baseDir, "words", "004.docx"), value);
    Console.WriteLine("插入表格成功");
}

在这里插入图片描述

在这里插入图片描述

插入循环表格

/// <summary>
/// 插入循环
/// </summary>
static void InsertForeachTable()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>()
    {
        ["TripHs"] = new List<Dictionary<string, object>>
        {
            new Dictionary<string, object>
            {
                { "Start",DateTime.Now},
                { "End",DateTime.Now.AddDays(30)},
                { "Send","王小明"},
                { "Photo",new MiniWordPicture() { Path = Path.Combine(baseDir, "words", "002.jpg"), Width = 160, Height = 160 }},
                { "Details",new List<MiniWordForeach>()
                    {
                        new MiniWordForeach()
                        {
                            Value = new Dictionary<string, object>()
                            {
                                {"Jobs", "总经理"},
                                {"Names", "大华"}
                            },
                            Separator = " | "
                        },
                        new MiniWordForeach()
                        {
                            Value = new Dictionary<string, object>()
                            {
                                {"Jobs", "经理"},
                                {"Names", "小华"}
                            },
                            Separator = " | "
                        },
                    } 
                },
            },
            new Dictionary<string, object>
            {
                { "Start",DateTime.Now},
                { "End",DateTime.Now.AddDays(30)},
                { "Send","朱大力"},
                { "Photo",new MiniWordPicture() { Path = Path.Combine(baseDir, "words", "002.jpg"), Width = 160, Height = 160 }},
                { "Details",new List<MiniWordForeach>()
                    {
                        new MiniWordForeach()
                        {
                            Value = new Dictionary<string, object>()
                            {
                                {"Jobs", "总经理"},
                                {"Names", "大明"}
                            },
                            Separator = " | "
                        },
                        new MiniWordForeach()
                        {
                            Value = new Dictionary<string, object>()
                            {
                                {"Jobs", "经理"},
                                {"Names", "小明"}
                            },
                            Separator = " | "
                        },
                    }
                },
            },
        }
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "005.docx"), Path.Combine(baseDir, "words", "005.docx"), value);
    Console.WriteLine("插入循环表格成功");
}

在这里插入图片描述
在这里插入图片描述

插入条件表格

/// <summary>
/// 插入条件表格
/// </summary>
static void InsertIf()
{
    var baseDir = AppDomain.CurrentDomain.BaseDirectory;
    var output = Path.Combine(baseDir, "output");
    if (!Directory.Exists(output))
    {
        Directory.CreateDirectory(output);
    }
    var value = new Dictionary<string, object>()
    {
        ["Name"] = "张三"
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "006_1.docx"), Path.Combine(baseDir, "words", "006.docx"), value);
    value = new Dictionary<string, object>()
    {
        ["Name"] = "李四"
    };
    MiniWord.SaveAsByTemplate(Path.Combine(output, "006_2.docx"), Path.Combine(baseDir, "words", "006.docx"), value);
    Console.WriteLine("插入条件表格成功");
}

在这里插入图片描述
在这里插入图片描述

插入双层for循环

 /// <summary>
 /// 插入双层for循环
 /// </summary>
 static void Insert2ForeachTable()
 {
     var baseDir = AppDomain.CurrentDomain.BaseDirectory;
     var output = Path.Combine(baseDir, "output");
     if (!Directory.Exists(output))
     {
         Directory.CreateDirectory(output);
     }
     var value = new Dictionary<string, object>()
     {
         ["LoopData"] = new List<object>()
         {
             new {
                 Type="类型A",
                 Items = new List<object>() {new {Name = "A-1"}, new {Name = "A-2"},}
             },
             new
             {
                 Type="类型B",
                 Items = new List<object>() {new {Name = "B-1"}, new {Name = "B-2"}, new {Name = "B-3"},}
             },
         }
     };
     MiniWord.SaveAsByTemplate(Path.Combine(output, "007.docx"), Path.Combine(baseDir, "words", "007.docx"), value);
     Console.WriteLine("插入循环表格成功");
 }

在这里插入图片描述

在这里插入图片描述

循环+if表格

在这里插入图片描述
在这里插入图片描述

参考

https://gitee.com/dotnetchina/MiniWord

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

假装我不帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值