dotproject安装及 修正甘特图乱码

 

去网站下载最新版本 http://www.dotproject.net/

第一次运行会检查你的服务器环境,注意画勾和差的地方,即时修正问题,系统会自动生成config.php文件

 

===============================

以下转载台湾那朋友的文章,感谢他!

=============================

 

由於過年前剛好有空

看到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下載【字体从一个TAR包中下载到的】

檔名請一樣,然後複製到解壓後的lib/fonts裏【修正 是放到lib/fonts/vera】

 

如果甘特圖顯示有問題,請在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這套系統

所以如果有問題,我並不能幫忙解決

===================

欢迎大家在最模板发表评论,以按照大家要求最模板提供简体汉化版本!

你可能感兴趣的:(PHP,.net,Blog,J#)