using System.Web.UI.WebControls;
using System.IO;
using Word = Microsoft.Office.Interop.Word;
using Word = Microsoft.Office.Interop.Word;没有援用好组件时,此处会报错,找不到Interop之类的,
这时候需要在援用里面援用组件.net下的Microsoft.Office.Interop.Visio,Microsoft.Office.Interop.Word
protected void Page_Load(object sender,EventArgs e)
string relativePath = Request.QueryString["FilePath"]; //相对路径 ,从@R_465_404@面得到文件相对路径。
if (relativePath == "" || relativePath==null) return;
string serverPath = Server.MapPath(relativePath); //相对转服务器对应路径
string html = serverPath.Replace(".doc",".html");
if (!File.Exists(@html)) //html页面不存在,把word转换成html
string filename = WordToHtml(serverPath);
StreamReader fread = new StreamReader(filename,System.Text.Encoding.GetEncoding("gb2312"));
string ss = fread.ReadToEnd();
Response.Write(ss); //直接写字符串到网页会发现,文字可显示,图片、表格没法显示。因此在后面重跳转到html文件页面。
fread.Close();
fread.Dispose();
html = relativePath.Replace(".doc",".html");
//html文件也存储在一样的路径下,
//只需要改了原路径的后缀便可得到html文件路径
Response.Redirect(html);
return;
/// word转成html
private string WordToHtml(object wordFileName)
//在此处放置用户代码以初始化页面
Word.Application word = new Word.Application();
Type wordType = word.GetType();
Word.Documents docs = word.Documents;
//打开文件
Type docsType = docs.GetType();
Word.Document doc = (Word.Document)docsType.InvokeMember("Open",System.Reflection.BindingFlags.InvokeMethod,null,docs,new Object[] { wordFileName,true,true });
//转换格式,另存为
Type docType = doc.GetType();
string wordSaveFileName = wordFileName.ToString();
string strSaveFileName = wordSaveFileName.Substring(0,wordSaveFileName.Length - 3) + "html";
object saveFileName = (object)strSaveFileName;
docType.InvokeMember("SaveAs",doc,new object[] { saveFileName,Word.WdSaveFormat.wdFormatFilteredHTML });
docType.InvokeMember("Close",null);
//退出 Word
wordType.InvokeMember("Quit",word,null);
return saveFileName.ToString();
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
最近在做word文档在线阅读,找了种种方法、控件以后,回归到word转HTML,在线阅读....1下是后台代码,前台html页面默许代码便可。由于用文件以下:using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI....
DocumentBuilder builder = new DocumentBuilder(doc);
//builder.MoveToBookmark("experiencetranslation");//如果设置了书签可以直接定位到书签处
builder.Insert
Html
("" +
ASP.NET
是一种用于构建 Web 应用程序的开发框架,而
html
2pdf.js 是一个 JavaScript 库,可以将
HTML
格式的内容
转换
为 PDF 格式的
文档
。
ASP.NET
可以与
html
2pdf.js 结合使用,
实现
将
ASP.NET
生成的
HTML
页面
转换
为 PDF
文档
。首先,我们需要在
ASP.NET
程序中引入
html
2pdf.js 的 JavaScript 文件。可以通过在
HTML
页面的头部添加以下代码
实现
:
```
html
<script src="
html
2pdf.js"></script>
然后,我们可以使用
html
2pdf.js 提供的 API 来进行
转换
。例如,我们可以在
ASP.NET
页面中添加一个按钮,当点击该按钮时,触发 JavaScript 代码将当前页面的
HTML
内容
转换
为 PDF
文档
:
```
html
<button onclick="convert
Html
ToPdf()">保存为PDF</button>
<script>
function convert
Html
ToPdf() {
// 获取需要
转换
的
HTML
元素
var element = document.getElementById('content');
// 使用
html
2pdf.js 将
HTML
转换
为 PDF
html
2pdf().from(element).save();
</script>
上述代码中,我们使用 `getElementById` 方法获取了 id 为 "content" 的
HTML
元素,这是一个
ASP.NET
页面中的示例。你可以根据实际情况修改此处的代码,以适应你的
ASP.NET
页面。
当用户点击“保存为PDF”按钮时,`convert
Html
ToPdf` 函数会调用 `
html
2pdf` 方法将
HTML
元素
转换
为 PDF,并使用 `save` 方法保存成文件。
综上所述,
ASP.NET
可以与
html
2pdf.js 结合使用,
实现
将
ASP.NET
页面
转换
为 PDF
文档
的功能。这样,用户就可以通过在
ASP.NET
页面上点击按钮,将页面内容以 PDF 格式保存到本地或进行其他操作。