请问net里如何将doc,xls,ppt转变成pdf格式

sy563216750 2012-12-17 11:39:45
我意思是在网页里实现在线转换那种。是B/S的。
要是没有代码或者太好建议的朋友,建议就不要留言了。让俺很失落的。
这里是我抄袭网络的实现代码,但是运行没有出错,就是没法转换。参考下
default.aspx
public void StartConvertPDF()
{
Process proc = new Process();
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.WorkingDirectory = @"c:\";
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true; //输入重定向
proc.Start();
proc.StandardInput.WriteLine(@"cscript //nologo c:\ConvertDoc2PDF.js c:\test.doc c:\");
proc.StandardInput.WriteLine("exit");
proc.WaitForExit();
}


protected void Button1_Click1(object sender, EventArgs e)
{
ToPdf my2Pdf = new ToPdf("test.doc", "c:\\");
ThreadStart thStartConvert = new ThreadStart(my2Pdf.StartConvertPDF); //开始异步调用线程
thStartConvert.BeginInvoke(new AsyncCallback(my2Pdf.EndConvertPDF), null);//设置异步线程
}
类ToPdf.cs
using System;
using System.Diagnostics;
using System.ComponentModel;

using System.Data;


namespace 转换成pdf
{
public class ToPdf
{
private string strWord = "";//此处的WORD文件不含路径
private string sPath = "";
public string sExecResult = "";
public bool bSuccess = false;
public ToPdf(string sParamWord, string sParamPath)
{
strWord = sParamWord;
sPath = sParamPath;
}
public void StartConvertPDF()
{
Process proc = new Process();
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.WorkingDirectory = sPath;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true;//标准输入重定向
proc.StartInfo.RedirectStandardOutput = true;//标准输出重定向
proc.Start();
proc.StandardInput.WriteLine("cscript //nologo " + sPath + "ConvertDoc2PDF.js " + sPath + strWord + "+sPath");
proc.StandardInput.WriteLine("exit");
sExecResult = proc.StandardOutput.ReadToEnd();//返回脚本执行的结果
proc.WaitForExit();
proc.Close();
}
public void EndConvertPDF(System.IAsyncResult ar)//ar参数必须写,是线程执行完成后的回调函数
{
if (sExecResult.IndexOf("isuccess") != -1) bSuccess = true;
else if (sExecResult.IndexOf("isfail") != -1) bSuccess = false;
//如果放在B/S系统,你可以在此处写数据库,是成功还是失败,并用一个WEBService程序不断检查数据库,此WEBService程序不放在该回调用函数中
//如果放在C/S系统,回调函数可以不放在类中,以便在窗体程序中调用结果
}


}
}
...全文
112 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sy563216750 2012-12-17
  • 打赏
  • 举报
回复
俺那个sy0714111,不知道哪个傻逼盗了我的密码,其实里面啥东西都没有。搞这些干嘛。

110,530

社区成员

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

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

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