dotproject安装及 修正甘特图乱码

2019-04-14 08:32发布

  去网站下载最新版本 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這套系統 所以如果有問題,我並不能幫忙解決 =================== 欢迎大家在最模板发表评论,以按照大家要求最模板提供简体汉化版本!