ReportViewer 匯出 PDF 時,中文不會出現亂碼的方法

我們最近在開發 SQL Server 2005 的 Reporting Service 報表功能,而在使用 ReportViewer 查看報表時都沒問題:

ReportViewer 匯出 PDF 檔

但是在執行匯出資料到 PDF 格式時,所有的中文字都會變成亂碼:

ReportViewer 執行匯出資料到 PDF 格式時,所有的中文字都會變成亂碼

若要解決這個問題其實還蠻容易的,只要修改報表定義檔( *.rdlc )中各物件的字型修改掉即可,預設來說預設的字型是 Tahoma,你必須改成 PMingLiU 即可。

而所有報表定義檔 ( *.rdlc ) 都是 XML 語法,你只要直接將以下標籤定義:

<FontFamily>Tahoma</FontFamily>

全部都換成以下 PMingLiU 這個定義就可以了,這個代碼是「細明體」的字型代號:

<FontFamily>PMingLiU</FontFamily>

如果你要設定的字型是「標楷體」的話,可以用以下定義:

<FontFamily>DFKai-SB</FontFamily>

如果是在中國大陸常用的「宋體」字型,我就不知道是什麼代碼了,也許知道的網友可以提供給我知道。

你可以使用任何編輯器來修改,例如說你可以使用 Notepad++ 一次開啟所有 *.rdlc 檔,然後用「取代所有開啟文件」的方式一次替換所有報表定義檔中的相關字串:

你可以使用 Notepad++ 一次開啟所有 *.rdlc 檔,然後用「取代所有開啟文件」的方式一次替換所有報表定義檔中的相關字串

這樣就可以省去用開發工具一個一個修改了。

http://blog.miniasp.com/post/2008/06/Display-Chinese-characters-when-using-ReviewerViewer-Export-PDF-format.aspx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值