首页 文章

使用c#和水晶报告在矩阵打印机上打印

提问于
浏览
0

目前我遇到的问题是,使用它的嵌入字体在矩阵打印机上打印在从c#core打印时不起作用 . 打印机/水晶报告总是将字体更改为某些Windows字体 . 由于这个事实,打印单页非常慢 .

如果我直接使用水晶报表设计器进行打印,一切都运行良好,并使用正确的字体 . 所以它可以工作,但不是从c#打印时 . 这意味着,驱动程序和打印机运行良好,并且水晶报告也可以将所有内容发送到打印机 . 就在我开始在.net应用程序中打印时,它不起作用 .

在报告中设置了正确的打印机,我不会覆盖任何设置 . 我只是创建报告并打印出来:

private ReportDocument reportDocument = new ReportDocument('C:\\Rpt\\Test.rpt');
// Passing parameter and every thing to the report
// Than print it:
reportDocument.PrintOptions.PrinterName = "Tally";
reportDocument.PrintToPrinter(1, false, 0, 0);

水晶报告中的.net打印引擎/运行时是否有问题?我设计师不使用.net,所以其他组件将被使用,这是有效的 .

EDIT

this article从sap snc,我发现:

仅供参考 - CR Designer使用DEVMODE结构访问打印机,.NET在System.Drawing.Printing.PrinterSettings中使用> .NET Framework等效

也许这就是问题?

EDIT 2

使用 Crystal Reports RAS 进行打印,可以解决问题 . 我试试看,让你知道 .

谢谢你们!

1 回答

  • 0

    我不会说这是因为运行时,而是因为.net接口调用Crystal Reports引擎的选项 . 通常,您可以重新输入目标系统/打印机中内置的字体 . 我不是Crystal Reports的专家,但是在PostScript和PDF中,您可以在文档中嵌入必要的字体,或者您可以使输出设备使用自己的字体 . CR必须具有类似的选项,但是当从客户端SW使用它时,您必须明确地激活它 .

相关问题