Aspose.Words导出html到word
程序员文章站
2022-04-09 08:55:19
...
Aspose.Words导出html到word,这个是以word模板导出的,要建word书签,然后为每个书签赋值
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Ayy.Export
{
/// <summary>
/// 导出为word
/// </summary>
public class ExportWordHelpter
{
/// <summary>
/// 导出html 到word
/// </summary>
/// <param name="info">待导出数据</param>
/// <param name="wordFilePath">导出磁盘地址</param>
/// <param name="fileTempPath">doc模板文件(含书签)磁盘地址</param>
public static void ExportHtmlToWord(Models.Veiw.ArticleWhere info, string wordFilePath, string fileTempPath)
{
//string fileTempPath = Server.MapPath("~/Templates/NCR.docx");
//载入模板
Aspose.Words.Document doc = new Aspose.Words.Document(fileTempPath);
Aspose.Words.DocumentBuilder builder = new Aspose.Words.DocumentBuilder(doc);
//标题
builder.MoveToBookmark("title");
builder.Write(info?.Title);
//书签赋值,部门
builder.MoveToBookmark("department");
builder.Write(info?.DeparetmentName);
//书签赋值,报送日期
string date = string.Empty;
if (info.SendTime.HasValue)
{
date = info.SendTime.Value.ToString("yyyy-MM-dd");
}
builder.MoveToBookmark("sendDate");
builder.Write(date);
//书签赋值,上报人
builder.MoveToBookmark("sendName");
builder.Write(info?.ReviewerName);
//书签赋值,内容
string content = info?.Content ?? string.Empty;
builder.MoveToBookmark("content");
//string html = ReplaceHtmlTag(content);
//FontSettings fontSettings = new FontSettings();
//fontSettings.SetFontsFolder("方正小标宋简体",true);
//builder.Document.FontSettings = fontSettings;
builder.InsertHtml(content);//含html的文章内容
// doc.Save("E:/DownLoadWord/DocumentBuilder.InsertTableFromHtml Out.doc");
doc.Save(wordFilePath);
}
}
}