<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Fwolf's Blog &#187; GTD - Fwolf's Blog</title>
	<atom:link href="http://www.fwolf.com/blog/post/tag/gtd/feed" rel="self" type="application/rss+xml" />
	<link>http://www.fwolf.com/blog</link>
	<description>随心·随意·随缘·努力～</description>
	<lastBuildDate>Sun, 29 Aug 2010 14:52:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>teamol=WebCollab</title>
		<link>http://www.fwolf.com/blog/post/432</link>
		<comments>http://www.fwolf.com/blog/post/432#comments</comments>
		<pubDate>Sat, 28 Feb 2009 16:19:33 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[GTD]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[webcollab]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/?p=432</guid>
		<description><![CDATA[如果你曾经在国内某个php源码下载网站下载过一个叫teamol的团队任务分配软件，不知你有没有注意到，它和国外开源项目WebCollab之间似乎有着亲密的联系。 本来我也没注意，可这个teamol下载回来以后安装颇不顺利，文档TeamOL setup.doc和安装界面有不一样的地方，虽然国内开源项目用doc写文档不算奇怪，但这个文档内容也太少了。代码注释中有个“官方网站”http://www.inodea.cn是打不开的，代码中很多地方标的版本号是0.1，可下载时我记得说的出3.0或者3.2版本。 开始安装以后有个地方卡壳了，还没安装数据库，就要从数据库里信息来验证用户是否有权限安装。hack安装之后，path配置也有问题，模板中还有一些错误，比如明明这段函数内没有$title这个变量却多次使用，要知道即使是global $title也是没有值的。 反正歪歪扭扭总算把程序配置得能运转了，开始试试，功能倒还有点让我满意的意思，除了日期选择的弹出窗口我极其不喜欢。然后我就发现了一件让我大跌眼镜的事情，这么一个错误百出或者说有点像半成品的“国产开源”作品，居然不仅有英、中文支持，还有一个看似排版比较成熟的英文帮助页面： 好奇的我挑了帮助页面中的一句话上G一搜，便找到了WebCollab。仔细比较下来，两者的目录结构也几乎一样： 结果应该不用我说了，也或许teamol的作者原想只是以webcollab为蓝本边学习边制作一个全新的系统吧，从注释中的版本0.1和修改过使用frame的页面框架中能够看出作者还是付出了些劳动的。 回到主题，用于小组内工作任务分配跟踪，倒是可以试试WebCollab，界面是简陋了点，基本的内容算是都有了。但这类软件，至今没找到一个特别好用的，包括很多在线的GTD或者项目管理系统。 Tags: GTD, opensource, PHP, webcollab Related posts 针对$_SERVER['PHP_SELF']的跨站脚本攻击（XSS） (3) 配置安全的共享web服务器（抛砖引玉） (4) 选择Eclipse PHP Development Tools(PDT)作为PHP开发工具 (8) 让phpmailer支持中文名称的附件 (5) 终于能够通过phpmailer使用gmail账号发送邮件了 (50)]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/fwolf/3315783583/" title="Team Online 项目管理系统 by fwolf, on Flickr"><img src="http://farm4.static.flickr.com/3364/3315783583_6549d775e4_o.png" width="354" height="263" alt="Team Online 项目管理系统" /></a></p>

<p>如果你曾经在国内某个php源码下载网站下载过一个叫teamol的团队任务分配软件，不知你有没有注意到，它和国外开源项目<a href="http://webcollab.sourceforge.net/">WebCollab</a>之间似乎有着亲密的联系。</p>

<p>本来我也没注意，可这个teamol下载回来以后安装颇不顺利，文档<code>TeamOL setup.doc</code>和安装界面有不一样的地方，虽然国内开源项目用doc写文档不算奇怪，但这个文档内容也太少了。代码注释中有个“官方网站”http://www.inodea.cn是打不开的，代码中很多地方标的版本号是0.1，可下载时我记得说的出3.0或者3.2版本。</p>

<p>开始安装以后有个地方卡壳了，还没安装数据库，就要从数据库里信息来验证用户是否有权限安装。hack安装之后，path配置也有问题，模板中还有一些错误，比如明明这段函数内没有<code>$title</code>这个变量却多次使用，要知道即使是<code>global $title</code>也是没有值的。</p>

<p>反正歪歪扭扭总算把程序配置得能运转了，开始试试，功能倒还有点让我满意的意思，除了日期选择的弹出窗口我极其不喜欢。然后我就发现了一件让我大跌眼镜的事情，这么一个错误百出或者说有点像半成品的“国产开源”作品，居然不仅有英、中文支持，还有一个看似排版比较成熟的英文帮助页面：</p>

<p><a href="http://www.flickr.com/photos/fwolf/3315826755/" title="webcollab-help by fwolf, on Flickr"><img src="http://farm4.static.flickr.com/3640/3315826755_5522fc9314_m.jpg" width="240" height="123" alt="webcollab-help" /></a></p>

<p>好奇的我挑了帮助页面中的一句话上G一搜，便找到了<a href="http://webcollab.sourceforge.net/">WebCollab</a>。仔细比较下来，两者的目录结构也几乎一样：</p>

<p><a href="http://www.flickr.com/photos/fwolf/3316666910/" title="dir structure of teamol and webcollab by fwolf, on Flickr"><img src="http://farm4.static.flickr.com/3664/3316666910_9b69bd7dc4_m.jpg" width="240" height="165" alt="dir structure of teamol and webcollab" /></a></p>

<p>结果应该不用我说了，也或许teamol的作者原想只是以webcollab为蓝本边学习边制作一个全新的系统吧，从注释中的版本0.1和修改过使用frame的页面框架中能够看出作者还是付出了些劳动的。</p>

<p>回到主题，用于小组内工作任务分配跟踪，倒是可以试试<a href="http://webcollab.sourceforge.net/">WebCollab</a>，界面是简陋了点，基本的内容算是都有了。但这类软件，至今没找到一个特别好用的，包括很多在线的GTD或者项目管理系统。</p>

<p><a href="http://www.flickr.com/photos/fwolf/3316619628/" title="WebCollab login by fwolf, on Flickr"><img src="http://farm4.static.flickr.com/3595/3316619628_fcbf0f7500_m.jpg" width="240" height="197" alt="WebCollab login" /></a></p>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/gtd" title="GTD" rel="tag">GTD</a>, <a href="http://www.fwolf.com/blog/post/tag/opensource" title="opensource" rel="tag">opensource</a>, <a href="http://www.fwolf.com/blog/post/tag/php" title="PHP" rel="tag">PHP</a>, <a href="http://www.fwolf.com/blog/post/tag/webcollab" title="webcollab" rel="tag">webcollab</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/300" title="针对$_SERVER['PHP_SELF']的跨站脚本攻击（XSS） (2007-03-18)">针对$_SERVER['PHP_SELF']的跨站脚本攻击（XSS）</a> (3)</li>
	<li><a href="http://www.fwolf.com/blog/post/443" title="配置安全的共享web服务器（抛砖引玉） (2009-06-09)">配置安全的共享web服务器（抛砖引玉）</a> (4)</li>
	<li><a href="http://www.fwolf.com/blog/post/400" title="选择Eclipse PHP Development Tools(PDT)作为PHP开发工具 (2008-05-03)">选择Eclipse PHP Development Tools(PDT)作为PHP开发工具</a> (8)</li>
	<li><a href="http://www.fwolf.com/blog/post/176" title="让phpmailer支持中文名称的附件 (2006-05-23)">让phpmailer支持中文名称的附件</a> (5)</li>
	<li><a href="http://www.fwolf.com/blog/post/155" title="终于能够通过phpmailer使用gmail账号发送邮件了 (2006-04-14)">终于能够通过phpmailer使用gmail账号发送邮件了</a> (50)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/432/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>为ThinkingRock报表添加字体</title>
		<link>http://www.fwolf.com/blog/post/419</link>
		<comments>http://www.fwolf.com/blog/post/419#comments</comments>
		<pubDate>Fri, 01 Aug 2008 07:59:08 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[font]]></category>
		<category><![CDATA[fop]]></category>
		<category><![CDATA[GTD]]></category>
		<category><![CDATA[ThinkingRock]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/?p=419</guid>
		<description><![CDATA[ThinkingRock是一款用Java编写的跨平台的GTD工具，我试用过很多GTD工具，在线的、单机的、自架服务器的，转了好几个圈，最后又转回来用它了，主要理由就是方便，该复杂的功能就要复杂，该简单的功能就要简单，可以用Project/Action来组织复杂事务，支持任务分配（当然只是给自己看的，没有协作功能），还算方便够用的报表功能。说到报表就到本文的主题了，软件自带的几个字体都无法显示中文，生成pdf报表之后里面的中文都会变成井字号#，所以需要自己安装中文字体。 参照官方的字体安装说明，核心意思是该软件的字体读取使用了FOP，而这个FOP需要Font Metrics文件才能工作。FOP是Apache中的一个项目，我没有深入去研究，不过网站上也有一篇比较清楚的文章教人如何生成这个Font Metrics文件。 但文章中的例子，使用库文件的位置和形式有点小问题，-cp后面是各个库文件，要能访问到才行，文中的路径显然不合适；文中各个库文件之间是用分号;间隔，这是在Windows中的写法，放nix下就错了，可以换成冒号:。所以，命令就变成了这个样子，注意所在路径的变化和相对路径： $ cd /big2/tools/tr-2.0.1/tr/resource/fop $ ln -s /big2/fonts/xpfonts/simsun.ttf $ java -cp ../../modules/ext/fop-0.93.jar:../../modules/ext/avalon-framework-4.2.0.jar:../../modules/ext/commons-logging-1.0.4.jar:../../modules/ext/commons-io-1.1.jar org.apache.fop.fonts.apps.TTFReader -ttcname "SimSun" simsun.ttf simsun.xml 如果字体文件中包含多个字体，而你指定了错误的字体名称，系统会给出提示： TTF Reader for Apache FOP 0.93 Parsing font... Reading simsun.ttf... This is a TrueType collection file with 2 fonts Containing the following fonts: SimSun NSimSun Error while building XML font metrics file. java.io.IOException: [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.thinkingrock.com.au/">ThinkingRock</a>是一款用Java编写的跨平台的GTD工具，我试用过很多GTD工具，在线的、单机的、自架服务器的，转了好几个圈，最后又转回来用它了，主要理由就是方便，该复杂的功能就要复杂，该简单的功能就要简单，可以用Project/Action来组织复杂事务，支持任务分配（当然只是给自己看的，没有协作功能），还算方便够用的报表功能。说到报表就到本文的主题了，软件自带的几个字体都无法显示中文，生成pdf报表之后里面的中文都会变成井字号<code>#</code>，所以需要自己安装中文字体。</p>

<p>参照<a href="http://www.thinkingrock.com.au/faq.php#faq6">官方的字体安装说明</a>，核心意思是该软件的字体读取使用了FOP，而这个FOP需要Font Metrics文件才能工作。FOP是Apache中的一个项目，我没有深入去研究，不过网站上也有<a href="http://xmlgraphics.apache.org/fop/0.94/fonts.html#custom">一篇比较清楚的文章教人如何生成这个Font Metrics文件</a>。</p>

<p>但文章中的例子，使用库文件的位置和形式有点小问题，<code>-cp</code>后面是各个库文件，要能访问到才行，文中的路径显然不合适；文中各个库文件之间是用分号<code>;</code>间隔，这是在Windows中的写法，放nix下就错了，可以换成冒号<code>:</code>。所以，命令就变成了这个样子，注意所在路径的变化和相对路径：</p>

<pre><code>$ cd /big2/tools/tr-2.0.1/tr/resource/fop
$ ln -s /big2/fonts/xpfonts/simsun.ttf
$ java -cp ../../modules/ext/fop-0.93.jar:../../modules/ext/avalon-framework-4.2.0.jar:../../modules/ext/commons-logging-1.0.4.jar:../../modules/ext/commons-io-1.1.jar org.apache.fop.fonts.apps.TTFReader -ttcname "SimSun" simsun.ttf simsun.xml
</code></pre>

<p>如果字体文件中包含多个字体，而你指定了错误的字体名称，系统会给出提示：</p>

<pre><code>TTF Reader for Apache FOP 0.93

Parsing font...
Reading simsun.ttf...
This is a TrueType collection file with 2 fonts
Containing the following fonts: 
SimSun
NSimSun
Error while building XML font metrics file.
java.io.IOException: Name does not exist in the TrueType collection: Simsun
</code></pre>

<p>看到没，SimSun和NSimSun俨然就是宋体和新宋体啊。生成成功之后，simsun.xml就是我们得到的Font Metrics文件，所以接下来只需要再修改一下<code>fop.xconf</code>，把新字体的设置加进去就可以了：</p>

<pre><code>&lt;font metrics-url="simsun.xml" kerning="yes" embed-url="simsun.ttf"&gt;
  &lt;font-triplet name="SimSun" style="normal" weight="normal"/&gt;
&lt;/font&gt;
&lt;font metrics-url="simsun.xml" kerning="yes" embed-url="simsun.ttf"&gt;
  &lt;font-triplet name="SimSun" style="normal" weight="bold"/&gt;
&lt;/font&gt;
&lt;font metrics-url="simsun.xml" kerning="yes" embed-url="simsun.ttf"&gt;
  &lt;font-triplet name="SimSun" style="italic" weight="normal"/&gt;
&lt;/font&gt;
</code></pre>

<p>好了，现在ThinkingRock的Tools -&gt; Options -&gt; Miscellaneous -&gt; Action Screens中，就可以选择中文字体SimSun了，各种报表pdf中的中文也都会正常显示。</p>

<h4>参考</h4>

<ul>
<li><a href="http://www.fallleaf.net/content/view/148/9/">为ThinkingRock的REPORT添加中文字体</a></li>
<li><a href="http://www.mifengtd.cn/articles/add_fonts_for_thinkingrock_reports.html">ThinkingRock Hacks:让Report输出中文</a></li>
</ul>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/font" title="font" rel="tag">font</a>, <a href="http://www.fwolf.com/blog/post/tag/fop" title="fop" rel="tag">fop</a>, <a href="http://www.fwolf.com/blog/post/tag/gtd" title="GTD" rel="tag">GTD</a>, <a href="http://www.fwolf.com/blog/post/tag/thinkingrock" title="ThinkingRock" rel="tag">ThinkingRock</a>, <a href="http://www.fwolf.com/blog/post/tag/tools" title="Tools" rel="tag">Tools</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/400" title="选择Eclipse PHP Development Tools(PDT)作为PHP开发工具 (2008-05-03)">选择Eclipse PHP Development Tools(PDT)作为PHP开发工具</a> (8)</li>
	<li><a href="http://www.fwolf.com/blog/post/17" title="我的email客户端软件选择历程 (2005-05-23)">我的email客户端软件选择历程</a> (7)</li>
	<li><a href="http://www.fwolf.com/blog/post/439" title="小巧的编辑器Geany (2009-04-20)">小巧的编辑器Geany</a> (6)</li>
	<li><a href="http://www.fwolf.com/blog/post/433" title="好玩有趣又有用的Mockups (2009-03-02)">好玩有趣又有用的Mockups</a> (4)</li>
	<li><a href="http://www.fwolf.com/blog/post/434" title="在GLPI中输出中文PDF文件 (2009-04-02)">在GLPI中输出中文PDF文件</a> (2)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/419/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
