html转word

_Nobodyknows 2014-07-09 02:52:03
我用的ASP.NET,要做一个导出word的功能。现在导出如下图

把这个拖一下就可以,但在程序里面该怎么设置让他靠左边点?我代码生成代码

string _html = "";
if (Request.Form["hidhtml"] != null && Request.Form["hidhtml"].ToString().Trim() != string.Empty)
{
//取得网页的html代码
_html = Request.Form["hidhtml"].ToString();

_html = new Regex("title(.*?)\"(.*?)\"").Replace(_html, "");

string path = Server.MapPath("\\upload") + GetSaveFilePath(); //创建文件夹算法
//因為Web 是多執行緒環境,避免甲產生的文件被乙下載去,所以檔名都用唯一
string fileNameWithOutExtention = path.Substring(path.LastIndexOf("\\") + 1);

string strPath = path + ".doc";

//生成word
Document _doc = new Document();
DocumentBuilder _builder = new DocumentBuilder(_doc);
_builder.InsertHtml(_html);
_doc.Save(strPath, Aspose.Words.SaveFormat.Doc);

//檔案下載
//把檔案讀進串流
FileStream fs = new FileStream(strPath, FileMode.Open);
byte[] file = new byte[fs.Length];
fs.Read(file, 0, file.Length);
fs.Close();

//Response給用戶端下載
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ContentType = "application/msword";
HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=" + fileNameWithOutExtention + ".doc");//強制下載
HttpContext.Current.Response.ContentType = "application/octet-stream";
HttpContext.Current.Response.BinaryWrite(file);

Response.End();

}
...全文
464 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Candy_yl 2016-12-07
  • 打赏
  • 举报
回复
把html转为word,怎么去掉word默认的页边距呀?我转完之后的table整体缩小了。。。求助楼主丫丫丫
papaya73 2014-07-09
  • 打赏
  • 举报
回复
需要调整页面边距 Microsoft.Office.Interop.Word.Document varDoc = varWord.Documents.Open(ref varFileName, ref varMissing, ref varFalseValue, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing, ref varMissing); varDoc.PageSetup.PageHeight = 1584; varDoc.PageSetup.PageWidth = 333; varDoc.PageSetup.TopMargin = 0; varDoc.PageSetup.BottomMargin = 0; varDoc.PageSetup.LeftMargin = 0; varDoc.PageSetup.RightMargin = 0;
wanghui0380 2014-07-09
  • 打赏
  • 举报
回复
额,因为你是在web视图下看滴,如果你在大纲视图下看就是居中滴 任何一个word都如此,web视图都是靠左的
_Nobodyknows 2014-07-09
  • 打赏
  • 举报
回复
引用 1 楼 kongwei521 的回复:
_html得到的是个table还是什么DIV?如果是 你在html里面设置 table/div居左在生成看看
是一个DIV包含了表格的
於黾 2014-07-09
  • 打赏
  • 举报
回复
设置一下页边距 既然不是导出html页,而是引用了word的dll,应该有属性可以设置的.
蝶恋花雨 2014-07-09
  • 打赏
  • 举报
回复
_html得到的是个table还是什么DIV?如果是 你在html里面设置 table/div居左在生成看看

111,096

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧