水晶报表打印/ PDF文件打印

时间:2011-11-21 11:14:42

标签: asp.net pdf printing crystal-reports

我正在使用水晶报告11,ASP .NET 3.5

我想要在没有在crystalreportviewer中查看数据的情况下打印水晶报告的任何线索/建议。

我有一个选项是将水晶报告导出为PDF然后打印。 但是如何在不打开PDF文件的情况下打印PDF文件。我不想从代码中指定打印机。

我想从打印对话框中选择打印机。打印机可以是网络打印机。

我还想知道是否有任何第三方工具。

请提供您的建议。

谢谢

1 个答案:

答案 0 :(得分:4)

在我的asp.net网络应用程序中,我使用Crystal生成一个可以流式传输到客户端的PDF。 这要求用户必须安装PDF查看器。

我的一些代码:

protected void Page_Init(object sender, EventArgs e)
{
    string repName = Request.QueryString.Get("report");

    ReportDocument rpt = new ReportDocument();
    rpt.Load(Server.MapPath(repName));

    System.IO.Stream oStream;
    byte[] byteArray = null;
    oStream = rpt.ExportToStream(ExportFormatType.PortableDocFormat);
    byteArray = new byte[oStream.Length];
    oStream.Read(byteArray, 0, Convert.ToInt32(oStream.Length - 1));
    Response.ClearContent();
    Response.ClearHeaders();
    Response.ContentType = "application/pdf";
    Response.BinaryWrite(byteArray);
    Response.Flush();
    Response.Close();
}

希望有所帮助。