日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Zimbra的Web客户端国际字体的控制机制及定制方法

發(fā)布時間:2025/5/22 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Zimbra的Web客户端国际字体的控制机制及定制方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

為什么80%的碼農(nóng)都做不了架構師?>>> ??

前些日子,在論壇中提出了一個關于開發(fā)Zimbra增補程序的設想,有開客提到如何在ZimbraWeb界面中加入更多的中文字體。今天花了些時間?研究了一下,經(jīng)初步測試,成功添加了微軟雅黑字體。現(xiàn)將ZimbraWeb客戶端(以下簡稱ZWC)國際字體的控制機制及定制方法總結如下。不當錯誤,請高人指正。

一、控制機制
ZWC控制資源文件(properties文件)來實現(xiàn)國際化下的字體列表。在JAVA架構的系統(tǒng)下,通過資源文件來實現(xiàn)國際化是常用的技術,ZWC也不例外。

經(jīng)過搜索,ZWC中控制國際化下的字體列表的資源文件是:

#zimbrahome/jetty/webapps/zimbra/WEB-INF/classes/messages/AjxMsg.properties

按照Java的規(guī)則,中文簡體對應的資源文件應該是:

#zimbrahome/jetty/webapps/zimbra/WEB-INF/classes/messages/AjxMsg_zh_CN.properties

在這兩個文件中有一段話:

#?The?font?family?options?specified?below?are?a?list?of?fonts?for

#?HTML?compose.?Each?value?is?a?comma-separated?list?of?font?names

#?to?be?used.?The?entries?whose?key?ends?in?".display"?is?used?as

#?the?name?that?is?shown?to?the?user;?entries?whose?key?ends?in

#?".css"?is?the?CSS?list?of?font?names?that?is?inserted?into?the

#?HTML?document.

#

#?Any?number?of?font?families?can?be?added?to?the?list.?To?add?a

#?font?family,?name?the?key?"fontFamilyBase{number}.display"?and

#?"fontFamilyBase{number}.css"?for?the?common?list?of?fonts;?or

#"fontFamilyIntl{number}.display"?and?"fontFamilyIntl{number].css"

#?for?additional?fonts?to?prefix?for?this?specific?locale.?The

#?{number}?is?the?next?number?in?the?list;?numbers?start?at?1.?To

#?end?the?list,?leave?the?last?values?as?the?"###"?string.

#

#?Note:?Not?all?of?the?fontFamilyIntl?values?need?to?be?specified!

#???????And?you?should?always?leave?a?"###"?entry?at?the?end?to

#???????avoid?accidentally?include?intl?font?families?inherited

#???????from?the?less?specific?locale?property?file.
翻譯一下,大意如下:

以下設置的字體選項是用于在起草HTML郵件時的可用字體列表。每個值都是一個逗號分隔的字體名列。以.display結尾的條目中的名稱用于顯示給用戶(在下拉列表中),以.css結尾的條目中的名稱則是用于插入HTML(類似于內(nèi)部名稱)文檔。

可以向列表中加入任意多的字體數(shù)量。要添加一個新的字體,首先要添加一個鍵名類似fontFamilyBase{number}.display的條目和一個鍵名類似fontFamilyBase{number}.css的條目,分別表示字體顯示名稱和內(nèi)部名稱。對于國際化環(huán)境而言,則應使用鍵名分別為fontFamilyIntl{number}.display和fontFamilyIntl{number}.css的條目。這里的{number}是一個阿拉伯數(shù)字,從1開始,新建時應比當前最大的數(shù)字大1。要結束這些列表,將最后一個條目的值設為“###”。

備注:并非所有的fontFamilyIntl都需要指定。對于不需要使用本地字體的條目,需要用“###”來作為條目的值。

ZWC默認的字體列表有20個字體,摘要如下:

fontFamilyBase1.display?=?Andale?Mono

...

fontFamilyBase21.display?=?###

fontFamilyBase1.css?=?andale?mono,times

...

fontFamilyBase21.css?=?###

國際字體也有20個,但實際填充的只有3個,摘要如下(字體名稱備注是我加的):

#字體

fontFamilyIntl1.display?=?\u5b8b\u4f53

fontFamilyIntl1.css?=?\u5b8b\u4f53,?simsun,?serif

#新宋體

fontFamilyIntl2.display?=?\u65b0\u5b8b\u4f53

fontFamilyIntl2.css?=?\u65b0\u5b8b\u4f53,?nsimsun,?sans-serif

#黑體

fontFamilyIntl3.display?=?\u9ed1\u4f53

fontFamilyIntl3.css?=?\u9ed1\u4f53,?simhei,?sans-serif

fontFamilyIntl4.display?=?###

fontFamilyIntl4.css?=?###

在這種情況下,當在ZWC起草中文郵件時,會顯示一共23個字段,前3個是中文字體,后20個是英文字體。

講到這里,相信你已經(jīng)大概明白ZWC是如何控制國際字體的了。

二、定制方法

前面已經(jīng)了解了ZWC是如何控制國際字體的了,下面就看一下如何來定制。假設需要添加“微軟雅黑”字體。

1.從服務器上下載AjxMsg_zh_CN.properties文件,路徑見上面。

2.到網(wǎng)站:http://blog.javawind.net/tools/native2ascii.jsp,將要顯示的中文字體名稱轉換成Unicode的格式,通常是\xxxxx的樣式。“微軟雅黑”轉換后的格式是:\u5fae\u8f6f\u96c5\u9ed1

3.用一個文本編輯工具打開,找到fontFamilyIntl列表中第一個值為“###”的條目。根據(jù)不同的軟件版本,那個{number}可能不同,在7.0上是4(即前面有3個字體)。

4.將

fontFamilyIntl4.display?=?###

fontFamilyIntl4.css?=?###

換成

fontFamilyIntl4.display?=?\u5fae\u8f6f\u96c5\u9ed1

fontFamilyIntl4.css?=?\u5fae\u8f6f\u96c5\u9ed1,?msyh

5.保存文件。

6.備份服務器上的AjxMsg_zh_CN.properties,并將修改后的文件上傳到服務器上覆蓋它。

7.重啟Zimbra服務。

等重啟完畢后,用瀏覽器打開ZWC,進入新建界面,看到了嗎?

?


希望對你有用!

轉載于:https://my.oschina.net/hunte/blog/15648

總結

以上是生活随笔為你收集整理的Zimbra的Web客户端国际字体的控制机制及定制方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。