我設計了一個水晶報表,它將通過Web界面發送到特定的(條形碼)打印機。允許在標準水晶報表查看器中生成報表會導致問題,因此我現在使用代碼隱藏功能將報表直接發送到打印機。Crystal Report .NET字體變化
ReportDocument Report = new ReportDocument();
ParameterDiscreteValue Order = new ParameterDiscreteValue();
Order.Value = Convert.ToInt32(txtOrder);
Report.Load(reportPath);
Report.SetParameterValue("OrderNo", Order);
PageMargins margins;
margins = Report.PrintOptions.PageMargins;
margins.bottomMargin = 0;
margins.leftMargin = 0;
margins.rightMargin = 0;
margins.topMargin = 0;
Report.PrintOptions.ApplyPageMargins(margins);
Report.PrintOptions.PrinterName = "\\\\printserver\\Zebra Z6M Plus (300dpi)";
Report.PrintToPrinter(1, false, PageNum, PageNum);
Report.Close();
當從設計師(CRXI)一切印刷工作正常,但當Web界面將作業發送到打印機(任何打印機),它改變了字體爲宋體這打亂了所有這些字段大小。如果我使用標準的.NET報表查看器,它使用正確的字體,所以我非常確定這個更改是由創建/使用ReportDocument引起的。
如何將報告直接發送至印刷品,而不將其默認爲Times New Roman字體?
您的打印機驅動程序是否是最新的? – PowerUser 2010-07-15 13:08:16
是的,我確保驅動程序是最新的,並且它確實能夠從Crystal設計器正常工作,而不是通過後面的.NET代碼。 – wham12 2010-07-15 13:31:26