原創(chuàng)|使用教程|編輯:郝浩|2013-06-21 14:18:41.000|閱讀 291 次
概述:Stimulsoft Reports能夠報(bào)表開發(fā)者如何最快速且最低成本的將報(bào)表內(nèi)容翻譯成需要的語言,實(shí)現(xiàn)多語言報(bào)表的的長(zhǎng)期維護(hù)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
雖然語言障礙對(duì)于我們國內(nèi)的工程師來說,并不是控件選型的最看重的問題。但擁有標(biāo)準(zhǔn)本地化語言的控件,無疑對(duì)提高開發(fā)效率、節(jié)約學(xué)習(xí)成本來說,是具有錦上添花效果的。
報(bào)表開發(fā)面臨的語言問題,比其他應(yīng)用開發(fā)又要稍微嚴(yán)重一點(diǎn),因?yàn)檎Z言問題不僅僅出現(xiàn)在控件界面上了,更重要的是存在于報(bào)表內(nèi)容中。在中國,一般存在在報(bào)表中的語言除了阿拉伯?dāng)?shù)字之外,就是中文或者英文了,而且中文和英文同時(shí)存在在報(bào)表中的情況很常見。如果是外資企業(yè),那就有德語、日語、韓語等母公司語言和中文同時(shí)出現(xiàn)在報(bào)表中的可能了。
報(bào)表開發(fā)者如何最快速且最低成本的將報(bào)表內(nèi)容翻譯成需要的語言,Stimulsoft Reports或許能幫你解決這個(gè)問題。
針對(duì)報(bào)表內(nèi)容多語言的問題,一般來說有兩個(gè)解決方案,一是為每種語言創(chuàng)建多份單獨(dú)的報(bào)表,二是讓一份報(bào)表擁有自動(dòng)翻譯語言的能力。
第一個(gè)解決方案開發(fā)單獨(dú)報(bào)表,開發(fā)者可以靈活的自定義具體需求語言,但是這個(gè)方案除了耗時(shí)耗力外,還不利于報(bào)表維護(hù)和變更。如果報(bào)表需求有所變更,那需要逐一改動(dòng)每個(gè)語言版本的報(bào)表。
第二個(gè)解決方案相對(duì)方便且易于報(bào)表的長(zhǎng)期維護(hù),使用Stimulsoft Reports有兩種方式可以實(shí)現(xiàn)創(chuàng)建自動(dòng)翻譯內(nèi)容的報(bào)表。一種是在設(shè)計(jì)器里面使用GlobalizationEditor,另外一種是在代碼中使用資源文件。
對(duì)于第一種方式,Stimulsoft Reports中已經(jīng)包含了一個(gè)叫做“Globalization Strings”的編輯器。他能展示所有自動(dòng)翻譯后的報(bào)表字符串。你可以添加所所需的語言,然后為這些語言制定翻譯字符串。所有語言在默認(rèn)情況下,所有字符串有對(duì)應(yīng)的報(bào)表值,在修改報(bào)表時(shí)會(huì)對(duì)應(yīng)的改變。但是如果你為字符串設(shè)定了一個(gè)新的值,那這個(gè)值將會(huì)被儲(chǔ)存并不會(huì)改變。
Globalization Strings中有兩個(gè)新功能,值得我們特別介紹一下。“Get Culture Settings”功能可以再編輯器中用報(bào)表值填充當(dāng)前語言,換句話說就是,點(diǎn)擊這個(gè)鍵后,報(bào)表值將取代你之前輸入語言的值。還有一個(gè)“Set Culture Settings”功能實(shí)現(xiàn)在報(bào)表設(shè)計(jì)時(shí),在當(dāng)前報(bào)表中應(yīng)用自定義語言。
從代碼中翻譯報(bào)表,需要以下三個(gè)步驟。
1、為組件設(shè)置那些需要翻譯的Globalized Name,如Text,TextInCells,RichText和Image等。然后為每種語言用設(shè)置好的GlobalizedName和組件值在Visual Studio中生成資源文件。組件值就是文本或圖像組件的翻譯。
2、創(chuàng)建GlobalizationManager所有字段的描述,用以下方式。
步驟2是用來創(chuàng)建GlobalizationManager類的描述的,你會(huì)在項(xiàng)目交付時(shí)的產(chǎn)品安裝包或文件夾中發(fā)現(xiàn)它。在創(chuàng)建完成后,源碼中的GlobalizationManager被創(chuàng)建來用于顯示翻譯的語言。
Page {PageNumber} of {TotalPageCount}
3、用以下方式將創(chuàng)建好的GlobalizationManager指派給報(bào)表,加載報(bào)表,然后所有值就會(huì)自動(dòng)翻譯了。
report.GlobalizationManager = new GlobalizationManager("GlobalizedReport.MyResources", new CultureInfo(cultureName));
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)