分享dotProject 2.1.5 繁體中文版
作者: fase 日期: 2011-01-25 13:46
由於過年前剛好有空
看到dotProject又有新版的出來
就順手弄了一個中文版出來
並且也說明一下修正了哪些地方
不過這邊也要先說明一下
翻譯的部分是拿以前的翻譯檔再作修正
所以並沒有完全都翻到
不過這是整合好的版本
至少除了翻譯之後,也不需要再東改西改的
當然我是拿官網的版本下來修正的
所以pdf中文的問題還是在
其它的我記得的都修正了
修正了哪些部分,我就說明一下
基本上就是日曆和甘特圖的修正
當然翻譯檔要先copy進去
1.日曆的部分是修改lib/PEAR/Date/Calc.php
在function getMonthNames
加入setlocale(LC_TIME, 'en');
在function getWeekDays
加入setlocale(LC_TIME, 'en');
2.甘特圖的部分就比較麻煩
先修改字型的部分
修改lib/jpgraph/src/jpg-config.inc.php
將define('FF_CUSTOM', 18);
改成define('FF_CUSTOM', 31);
再來修改lib/jpgraph/src/jpgraph_ttf.inc.php
在89行改成define('CHINESE_TTF_FONT','fireflysung.ttf');//這是後面會提到要裝的字型
在324~328行改成
FF_CHINESE => array(
FS_NORMAL =>CHINESE_TTF_FONT,
FS_BOLD =>CHINESE_TTF_FONT,
FS_ITALIC =>CHINESE_TTF_FONT,
FS_BOLDITALIC =>CHINESE_TTF_FONT ),
這樣中文在甘特圖就可以顯示了
而我是另外再修正2個地方
lib/jpgraph/src/jpgraph_gantt.php
在2730行將j/n改成n/j,符合平常使用"月/日"來顯示
及2796行將$img->SetFont($this->month->iFFamily,$this->month->iFStyle,$this->month->iFSize);
改成$img->SetFont(FF_CUSTOM,$this->month->iFStyle,$this->month->iFSize);
lib/jpgraph/src/jpgraph.php
在362行function Set
加入global $locale;//這變數是在中文語言檔locales.php宣告
並將該function的
for($i=1; $i<=12; ++$i) {
list($short ,$full) = explode('|', strftime("%b|%B",strtotime("2001-$i-01")));
$this->iShortMonth[$aLocale][] = ucfirst($short);
$this->iMonthName [$aLocale][] = ucfirst($full);
}
改成
for($i=0; $i<12; ++$i) {
if( !isset( $locale ) )
{
list($short ,$full) = explode('|', strftime("%b|%B",strtotime("2001-$i-01")));
$this->iShortMonth[$aLocale][] = ucfirst($short);
$this->iMonthName [$aLocale][] = ucfirst($full);
}
else
{
$this->iShortMonth[$aLocale][] = $locale['monthsshort'][$i];
$this->iMonthName [$aLocale][] = $locale['months'][$i];
}
}
這樣甘特圖的月分才會變成中文
再來就修正模組裏甘特圖的程式碼
modules/projects/gantt.php
將214行
$name = ((mb_strlen(utf8_decode($p['project_name'])) > 25)
? (mb_substr(utf8_decode($p['project_name']), 0, 22) . '...')
: utf8_decode($p['project_name']));
改成
$name = ((strlen($p['project_name']) > 25)
? (substr($p['project_name'], 0, 22) . '...')
: $p['project_name']);
modules/tasks/gantt.php
將372行註解掉
if ($locale_char_set=='utf-8' && function_exists('utf8_decode')) {
$name = utf8_decode($name);
}
這樣就大致可以了
另外再重貼一下之前寫的
還有最重要的一點
此壓縮檔沒有中文字型
請自行去搜尋fireflysung.ttf下載
檔名請一樣,然後複製到解壓後的lib/fonts裏
如果甘特圖顯示有問題,請在php設定檔php.ini裏
將memory_limit = 32M
或許就能解決
安裝畫面我沒有翻中文,因為安裝只佔一小部分就懶得去處理了
安裝後,預設的帳號密碼為admin和passwd
下載(包含已修正過的)
http://www.fase.idv.tw/blog/download/dotproject_2_1_5_chinese_by_fase.zip
firefly字型,進到該目錄下,下載1.3.0的版本
http://freesf.tw/modules/mydownloads/viewcat.php?cid=19
就給大家參考用吧
另外提醒大家一下
我只是順手改一下整合一下
我本身並沒有在用dotProject這套系統
所以如果有問題,我並不能幫忙解決
看到dotProject又有新版的出來
就順手弄了一個中文版出來
並且也說明一下修正了哪些地方
不過這邊也要先說明一下
翻譯的部分是拿以前的翻譯檔再作修正
所以並沒有完全都翻到
不過這是整合好的版本
至少除了翻譯之後,也不需要再東改西改的
當然我是拿官網的版本下來修正的
所以pdf中文的問題還是在
其它的我記得的都修正了
修正了哪些部分,我就說明一下
基本上就是日曆和甘特圖的修正
當然翻譯檔要先copy進去
1.日曆的部分是修改lib/PEAR/Date/Calc.php
在function getMonthNames
加入setlocale(LC_TIME, 'en');
在function getWeekDays
加入setlocale(LC_TIME, 'en');
2.甘特圖的部分就比較麻煩
先修改字型的部分
修改lib/jpgraph/src/jpg-config.inc.php
將define('FF_CUSTOM', 18);
改成define('FF_CUSTOM', 31);
再來修改lib/jpgraph/src/jpgraph_ttf.inc.php
在89行改成define('CHINESE_TTF_FONT','fireflysung.ttf');//這是後面會提到要裝的字型
在324~328行改成
FF_CHINESE => array(
FS_NORMAL =>CHINESE_TTF_FONT,
FS_BOLD =>CHINESE_TTF_FONT,
FS_ITALIC =>CHINESE_TTF_FONT,
FS_BOLDITALIC =>CHINESE_TTF_FONT ),
這樣中文在甘特圖就可以顯示了
而我是另外再修正2個地方
lib/jpgraph/src/jpgraph_gantt.php
在2730行將j/n改成n/j,符合平常使用"月/日"來顯示
及2796行將$img->SetFont($this->month->iFFamily,$this->month->iFStyle,$this->month->iFSize);
改成$img->SetFont(FF_CUSTOM,$this->month->iFStyle,$this->month->iFSize);
lib/jpgraph/src/jpgraph.php
在362行function Set
加入global $locale;//這變數是在中文語言檔locales.php宣告
並將該function的
for($i=1; $i<=12; ++$i) {
list($short ,$full) = explode('|', strftime("%b|%B",strtotime("2001-$i-01")));
$this->iShortMonth[$aLocale][] = ucfirst($short);
$this->iMonthName [$aLocale][] = ucfirst($full);
}
改成
for($i=0; $i<12; ++$i) {
if( !isset( $locale ) )
{
list($short ,$full) = explode('|', strftime("%b|%B",strtotime("2001-$i-01")));
$this->iShortMonth[$aLocale][] = ucfirst($short);
$this->iMonthName [$aLocale][] = ucfirst($full);
}
else
{
$this->iShortMonth[$aLocale][] = $locale['monthsshort'][$i];
$this->iMonthName [$aLocale][] = $locale['months'][$i];
}
}
這樣甘特圖的月分才會變成中文
再來就修正模組裏甘特圖的程式碼
modules/projects/gantt.php
將214行
$name = ((mb_strlen(utf8_decode($p['project_name'])) > 25)
? (mb_substr(utf8_decode($p['project_name']), 0, 22) . '...')
: utf8_decode($p['project_name']));
改成
$name = ((strlen($p['project_name']) > 25)
? (substr($p['project_name'], 0, 22) . '...')
: $p['project_name']);
modules/tasks/gantt.php
將372行註解掉
if ($locale_char_set=='utf-8' && function_exists('utf8_decode')) {
$name = utf8_decode($name);
}
這樣就大致可以了
另外再重貼一下之前寫的
還有最重要的一點
此壓縮檔沒有中文字型
請自行去搜尋fireflysung.ttf下載
檔名請一樣,然後複製到解壓後的lib/fonts裏
如果甘特圖顯示有問題,請在php設定檔php.ini裏
將memory_limit = 32M
或許就能解決
安裝畫面我沒有翻中文,因為安裝只佔一小部分就懶得去處理了
安裝後,預設的帳號密碼為admin和passwd
下載(包含已修正過的)
http://www.fase.idv.tw/blog/download/dotproject_2_1_5_chinese_by_fase.zip
firefly字型,進到該目錄下,下載1.3.0的版本
http://freesf.tw/modules/mydownloads/viewcat.php?cid=19
就給大家參考用吧
另外提醒大家一下
我只是順手改一下整合一下
我本身並沒有在用dotProject這套系統
所以如果有問題,我並不能幫忙解決
標籤:
dotProject
評論: 8 |
引用: 3 |
閱讀: 14437 |
回到頁首
分享dotProject 2.1.2 繁體中文版 (2008-12-31 10:46)
專案管理dotProject (2008-12-26 11:36)