目前我遇到這樣的問題,即從我們的c#內核進行打印時,使用其嵌入字體的矩陣打印機上的打印不起作用。打印機/水晶報告總是將字體更改爲某些窗口字體。由於這個事實,打印單頁非常慢。使用c#和水晶報告在矩陣打印機上打印
如果我直接用水晶報表設計器打印,一切工作都很好,並使用正確的字體。所以它工作,但不是從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從樹液SNC,我發現:
FYI - CR設計器使用DEVMODE結構訪問打印機,.NET使用>在系統.NET框架equivolent .Drawing.Printing.PrinterSettings
也許這是問題?
編輯2
使用Crystal Reports RAS
進行打印,可以解決這個問題。我會試一試,讓你知道。
謝謝大家!
我無法嵌入這些字體,因爲它們不是TrueType字體。但是,謝謝:) – BendEg
我不是指嵌入到PDF中的字體,而是打印機內置的字體。您基本上必須強制CR引用它發送到打印機的文檔中的打印機字體。 – Neppomuk
我做過了,使用PrintToPrinter時似乎不起作用。使用RAS解決了這個問題 – BendEg