2014-01-17 134 views
0

我正在使用c#將Crystal Reports文件導出爲PDF。如果我在Crystal Reports中預覽報表(通過手動添加參數),我可以完美地看到報表。當我使用c#代碼將其導出爲PDF時,PDF不顯示日文字符。我只是得到一些方塊。 我使用宋體作爲字體。Crystal Reports ReportDocument使用特殊字符導出PDF文件

我在做什麼錯?

 ReportDocument cryRpt = new ReportDocument(); 

     cryRpt.Load(report); 


     cryRpt.SetDatabaseLogon(sqluser, sqlpassword, sqlserver, company); 

     ExportOptions CrExportOptions; 
     DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions(); 
     PdfRtfWordFormatOptions CrFormatTypeOptions = new PdfRtfWordFormatOptions(); 

     foreach (ReportDocument subrep in cryRpt.Subreports) 
     { 
      subrep.SetDatabaseLogon(sqluser, sqlpassword, sqlserver, company); 
     } 




     CrDiskFileDestinationOptions.DiskFileName = docname; 
     CrExportOptions = cryRpt.ExportOptions; 

     CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile; 
     CrExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat; 
     CrExportOptions.DestinationOptions = CrDiskFileDestinationOptions; 
     CrExportOptions.FormatOptions = CrFormatTypeOptions; 

     cryRpt.Export(); 

     cryRpt.Close(); 
     cryRpt.Dispose(); 
     cryRpt = null; 

回答

0

http://www.codeproject.com/Tips/749570/How-to-Export-Crystal-Report-in-Regional-Language

我要解決字體顯示框的問題或垃圾雖然出口被創建在區域語言如馬拉地語,印地文,阿拉伯文Crystal報表。最大的問題是因爲字體。

的字體哪些地方你要部署應用程序,我們使用而開發的報告應該有服務器

上。

如果字體不存在,那麼它會創建垃圾像角色。

提示:您不能使用任何字體開發報告您應該使用Unicode字體。

主要步驟是安裝字體在服務器或任何地方你要去部署應用程序。

雖然在語言出口Crystal報表,如英語,我們千萬不要因爲

由默認字體是安裝在您的PC(電腦)得到的問題。

但是在開發報告時在地區語言中我們遇到問題:

相關問題