常见问题常见问题   搜索搜索   会员列表会员列表   团队团队   注册注册    个人资料个人资料   登录查看您的站内信件登录查看您的站内信件   登录登录 

大家玩过 dotproject 吗?

 
发表新文章   这个论题已经被锁定,您不能发表、回复或者编辑文章。    FreeBSD China -> 技术交流
阅读上一个主题 :: 阅读下一个主题  
作者 留言
adamson
道士


注册时间: 2004-08-04
文章: 674
来自: Shenzhen

文章发表于: Sat 2005-11-12 18:15:50    发表主题: 大家玩过 dotproject 吗? 引用并回复

http://www.dotproject.net

项目管理,用 php 写成。但安装后,gantt chart 无法正常显示中文。

_________________
don't get mad, get bacula.
返回页首
阅览会员资料 发送站内信件 MSN Messenger
adamson
道士


注册时间: 2004-08-04
文章: 674
来自: Shenzhen

文章发表于: Sat 2005-11-12 20:49:12    发表主题: Re: 大家玩过 dotproject 吗? 引用并回复

按照 http://dev.csdn.net/article/71/71883.shtm 的办法修改后还是不行。

http://www.polycastle.3322.org:8021/gantt.gif

_________________
don't get mad, get bacula.
返回页首
阅览会员资料 发送站内信件 MSN Messenger
darkcc
老妖


注册时间: 2003-05-19
文章: 3491
来自: 茂名

文章发表于: Sat 2005-11-12 23:32:35    发表主题: 引用并回复

这个问题我已修正过了,必须修改里面的源码.
他的编写思路是先作html的过滤,才使用多语言的iconv(),会出现乱码.
返回页首
阅览会员资料 发送站内信件
adamson
道士


注册时间: 2004-08-04
文章: 674
来自: Shenzhen

文章发表于: Sun 2005-11-13 01:45:54    发表主题: Re: 大家玩过 dotproject 吗? 引用并回复

有些问题还是要靠自己。今晚花了一些时间看 dotproject 的源码,终于搞定 gantt chart 中文显示的问题。

--------------------------------------------------------------------
1. port 安装 dotproject 2.0.1
代码:
cd /usr/ports/www/dotproject
 make install clean

(记得加 Alias 至 httpd.conf; 要正常显示 gantt charts, 某些系统需将 php.ini 的 memory_limit 改为 64M)

2. 由于 dotproject 自带的 jpgraph 版本是 1.17, 有些问题, port 安装 jpgraph
代码:
cd /usr/ports/graphics/jpgraph
 make install clean


3. /usr/local/share/jpgraph/jpgraph.php 中 jpgraph 默认的 TTF_DIR 为 /usr/X11R6/lib/X11/fonts/truetype/; 为方便日后 portupgrade, 建议不要修改此默认的字体目录。jpgraph.php 有关 FF_SIMSUN 的定义是: FS_NORMAL 用的是 simsun.ttc; FS_BOLD 用的是 simhei.ttf。如果您想同时用到以上两种字体,则将 \window$\fonts\ 下的 simsun.ttc 和 simhei.ttf 上传到 /usr/X11R6/lib/X11/fonts/truetype/。其实,产生甘特图时,字体并不是很重要,我认为上传 simsun.ttc 就足够。这样,不要调用 FS_BOLD 便不会出现问题。

4. 将 jpgraph 更换为 port 版本
代码:
cd /usr/local/www/dotproject/lib/jpgraph
 mv src src.x
 ln -s /usr/local/share/jpgraph src

(注意:http://dev.csdn.net/article/71/71883.shtm 所说的存在值得商榷的地方。请不要修改 src/jpgraph.php 中 function convert 有关中文转换的部分。)

5. 修改 /usr/local/www/dotproject/modules/projects/gantt.php
代码:
a. 将(表格的 header )
 //$graph->scale->actinfo->SetFont(FF_ARIAL);
 改为
 $graph->scale->actinfo->SetFont(FF_SIMSUN,FS_NORMAL,9);

 b. 将(表格的 caption)
 $graph->scale->tableTitle->SetFont(FF_ARIAL,FS_BOLD,12);
 改为
 $graph->scale->tableTitle->SetFont(FF_SIMSUN,FS_NORMAL,12);

 c. 将(表格的内文)
 $bar->title->SetFont(FF_FONT1,FS_NORMAL,10);
 改为
 $bar->title->SetFont(FF_SIMSUN,FS_NORMAL,8);

 d. 将所有 arialbd.ttf 替换为 simsun.ttc

 e. 添加以下SetFont()
 在 $bar->caption->SetColor('darkgray'); 上一行加
 $bar->caption->SetFont(FF_SIMSUN,FS_NORMAL,8);

 在 $bar2->title->SetColor( bestColor( '#ffffff', '#'.$p['project_color_identifier'], '#000000' ) ); 上一行加
 $bar2->title->SetFont(FF_SIMSUN,FS_NORMAL,8);
 
 在 $vline = new GanttVLine($today, $AppUI->_('Today', UI_OUTPUT_RAW)); 下一行加
 $vline->title->SetFont(FF_SIMSUN,FS_NORMAL,9);


6. 修改 /usr/local/www/dotproject/modules/tasks/gantt.php
代码:
a. 将
 $graph->scale->SetDateLocale( $AppUI->user_locale );
 改为
 //$graph->scale->SetDateLocale( $AppUI->user_locale );

 b. 将(表格的 header )
 $graph->scale->actinfo->SetFont(FF_ARIAL);
 改为
 $graph->scale->actinfo->SetFont(FF_SIMSUN,FS_NORMAL,9);

 c. 将(表格的 caption)
 $graph->scale->tableTitle->SetFont(FF_ARIAL,FS_BOLD,12);
 改为
 $graph->scale->tableTitle->SetFont(FF_SIMSUN,FS_NORMAL,12);

 d. 将(表格的内文)
 $bar->title->SetFont(FF_ARIAL,FS_NORMAL,8);
 改为
 $bar->title->SetFont(FF_SIMSUN,FS_NORMAL,8);

 e. 将(表格的内文)
 $bar->title->SetFont(FF_ARIAL,FS_BOLD,8);
 改为
 $bar->title->SetFont(FF_SIMSUN,FS_NORMAL,8);

 f. 将
 $vline->title->SetFont(FF_ARIAL,FS_BOLD,12);
 改为
 $vline->title->SetFont(FF_SIMSUN,FS_NORMAL,9);

 g. 将所有 arialbd.ttf 替换为 simsun.ttc


dotproject 利用
代码:
if (is_file( TTF_DIR."arialbd.ttf" ))
这样的条件来 SetFont() 显然是不明智的; 我们最少可以这样改善一下:

将 arialbd.ttf 赋予一个变量,这样在不同的 locale 下替换起来更方便;另外, 若能结合用户的 locale 来选用字体则更为合理些。

(完)
----------------------------------------------------------------------
adamson 写到:
http://www.dotproject.net

项目管理,用 php 写成。但安装后,gantt chart 无法正常显示中文。

_________________
don't get mad, get bacula.
返回页首
阅览会员资料 发送站内信件 MSN Messenger
fhliang
半仙


注册时间: 2002-12-23
文章: 30

文章发表于: Wed 2006-01-04 13:42:30    发表主题: 引用并回复

哪个版本的Freebsd带有dotproject ?
返回页首
阅览会员资料 发送站内信件
从以前的文章开始显示:   
发表新文章   这个论题已经被锁定,您不能发表、回复或者编辑文章。    FreeBSD China -> 技术交流 论坛时间为 北京时间
1页/共1

 
转跳到:  
不能发布新主题
不能在这个论坛回复主题
不能在这个论坛编辑自己的文章
不能在这个论坛删除自己的文章
不能在这个论坛发表投票


Powered by phpBB 2023cc © 2003 Opensource Steps; © 2003-2009 The FreeBSD Simplified Chinese Project
Powered by phpBB © 2001, 2005 phpBB Group
The FreeBSD China Project 网站: 中文计划网站 社区网站
The FreeBSD China Project 版权所有 (C) 1999 - 2003 网页设计版权 著作权和商标