我正在使用水晶报告11,ASP .NET 3.5
我想要在没有在crystalreportviewer中查看数据的情况下打印水晶报告的任何线索/建议。
我有一个选项是将水晶报告导出为PDF然后打印。 但是如何在不打开PDF文件的情况下打印PDF文件。我不想从代码中指定打印机。
我想从打印对话框中选择打印机。打印机可以是网络打印机。
我还想知道是否有任何第三方工具。
请提供您的建议。
谢谢
答案 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();
}
希望有所帮助。