将Doc导出为PDF Asp.net

时间:2013-06-28 16:35:07

标签: c# asp.net asp.net-mvc pdf-generation abcpdf

所以我使用此代码将formview导出到Word。 它的作品很棒..但我希望它导出为PDF,以便无法编辑。或者可能是单词doc,以便身体不能进行更改。

protected void Button1_Click(object sender, EventArgs e)
{
    Response.Clear();
    Response.Buffer = true;
    Response.AddHeader("content-disposition",
    "attachment;filename=Report.doc");
    Response.Charset = "";
    Response.ContentType = "application/vnd.ms-word";
    StringWriter sw = new StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    FormView1.DataBind();
    FormView1.RenderControl(hw);
    Response.Output.Write(sw.ToString());
    Response.Flush();
    Response.End();
}

问题是,即使我在上面的代码中更改了内容类型和标题元素,它也会说输出pdf有错误。

我真的想要将doc转换为pdf或使用此代码生成pdf。

请帮忙。

谢谢..

2 个答案:

答案 0 :(得分:1)

在ASP.NET中创建PDF的最佳选择是使用像iTextSharp这样的插件。我过去曾经使用它,它非常简单而且免费。

http://itextpdf.com/

答案 1 :(得分:0)

如上所述,使用现有库之一创建PDF会更有效。

但如果您要使用interop,则可以为Microsoft Office下载s ave as pdf plugin
然后将“pdf”格式传递给SaveAs方法

或者,您可以将多个属性应用于word文档:
1.标记为最终doc.Final = true;
2.限制编辑

对于较新版本的Word,有一种Protect方法,可以方便地限制编辑:http://msdn.microsoft.com/en-us/library/ms178793.aspx