[英]Convert html to word
我使用docx.dll將html轉換為word。 但是無法轉換html標簽。 例如:html是一個p
<p><em><strong>adfa à asdf asdf</strong></em></p>
所以轉換完成后,word文件的內容是一樣的
<p><em><strong>adfa à asdf asdf</strong></em></p>
。
我的代碼如下
[System.Web.Services.WebMethod]
public static void eprt_tml(int ptcn_id)
{
DataTable tml_tbl = DBclass.TruyVanTraVeTable1("select course_id, vname, vcontent from testimonial where contact_id='" + ptcn_id + "'");
string course_name = DBclass.TruyVanTraVeGiaTri("select vname from course where id='"+tml_tbl.Rows[0]["course_id"]+"'");
DataTable ptcn_tbl = DBclass.TruyVanTraVeTable1("select first_name, last_name, salutation_id, title from contact where id='"+ptcn_id+"'");
string ptcn_name = ptcn_tbl.Rows[0]["last_name"].ToString() + " " + ptcn_tbl.Rows[0]["first_name"].ToString();
DocX g_document;
try
{
// Store a global reference to the loaded document.
g_document = DocX.Load(@"D:\Project\CRM1\tml\tml_tpt.docx");
/*
* The template 'InvoiceTemplate.docx' does exist,
* so lets use it to create an invoice for a factitious company
* called "The Happy Builder" and store a global reference it.
*/
g_document = crt_from_tpl(DocX.Load(@"D:\Project\CRM1\tml\tml_tpt.docx"), course_name, tml_tbl.Rows[0]["vname"].ToString(), tml_tbl.Rows[0]["vcontent"].ToString(), ptcn_name, ptcn_tbl.Rows[0]["title"].ToString());
// Save all changes made to this template as Invoice_The_Happy_Builder.docx (We don't want to replace InvoiceTemplate.docx).
g_document.SaveAs(@"D:\Project\CRM1\tml\Invoice_The_Happy_Builder.docx");
}
// The template 'InvoiceTemplate.docx' does not exist, so create it.
catch (FileNotFoundException)
{
}
}
//Create tml from template
[System.Web.Services.WebMethod]
private static DocX crt_from_tpl(DocX template, string course_name, string vname, string vcontent, string ptcn_name, string ptcn_title)
{
template.AddCustomProperty(new CustomProperty("static_title", "Ứng Dụng Thực Tiễn Thành Công"));
template.AddCustomProperty(new CustomProperty("tmlname", vname));
template.AddCustomProperty(new CustomProperty("tmlcontent", vcontent));
template.AddCustomProperty(new CustomProperty("ptcnname", ptcn_name));
template.AddCustomProperty(new CustomProperty("ptcntitle", ptcn_title));
template.AddCustomProperty(new CustomProperty("coursename", course_name));
return template;
}
我該如何解決?
使用Word打開HTML文件,單擊“另存為”,然后在“文件類型”下選擇“ Word文檔”。
在保存文檔之前,將這兩行添加到您的代碼中。
g_document.ReplaceText(@"<p><em><strong>","");
g_document.ReplaceText(@"</strong></em></p>","");
注意:它將僅刪除html標記,但不添加任何格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.