LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3663|回复: 30

新的freetype2已经支持中文的模拟粗体,这里是PKGBUILD [已更新]

[复制链接]
发表于 2005-5-28 01:33:23 | 显示全部楼层 |阅读模式
是cvs版的。
下面是PKGBUILD。

  1. pkgname=freetype2
  2. pkgver=cvs
  3. pkgrel=1
  4. pkgdesc="TrueType font rendering library cvs version"
  5. url="http://freetype.sourceforge.net"
  6. depends=('glibc' 'zlib')
  7. makedepends=('cvs' 'openssh')

  8. build() {
  9.   export CVS_RSH="ssh"
  10.   cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/freetype co freetype2
  11.   cd $startdir/src/freetype2
  12.   sh autogen.sh
  13.   ./configure --prefix=/usr
  14.   make || return 1
  15.   make DESTDIR=$startdir/pkg install
  16. }
复制代码


因为还需要libxft的配合才可以,所以需要重新编译libxft,让libxft知道freetype2支持了中文模拟粗体。下面是libXft 2.1.7的PKGBUILD:

  1. pkgname=libXft
  2. pkgver=2.1.7
  3. pkgrel=1
  4. pkgdesc="X FreeType library"
  5. url="http://fontconfig.org"
  6. depends=()
  7. source=(http://xlibs.freedesktop.org/release/$pkgname-$pkgver.tar.bz2)
  8. md5sums=()

  9. build() {
  10.   cd $startdir/src/$pkgname-$pkgver
  11.   ./configure --prefix=/usr/X11R6
  12.   make || return 1
  13.   make DESTDIR=$startdir/pkg install
  14. }
复制代码


建议的步骤如下:
1、用上面的PKGBUILD编译新的freetype2。然后pacman -U安装编译好的包。
2、用上面的PKGBUILD编译libXft,然后pacman -Af强制安装。

另:根据debian版的相关帖子,还需要fonts.conf里包含下面的行:

  1. <!--
  2.   Synthetic emboldening for fonts that do not have bold face available
  3.   -->

  4.      <match target="font">
  5.          <!-- check to see if the font is just regular -->
  6.          <test name="weight" compare="less_eq">
  7.              <int>100</int>
  8.          </test>
  9.          <!-- check to see if the pattern requests bold -->
  10.          <test target="pattern" name="weight" compare="more_eq">
  11.              <int>180</int>
  12.          </test>
  13.          <!-- set the embolden flag -->
  14.          <edit name="embolden" mode="assign">
  15.              <bool>true</bool>
  16.          </edit>
  17.      </match>
复制代码


建议放到~/.fonts.conf或者/etc/fonts/local.conf里就行了,不用放到fonts.conf里。

备注:
因为freetype2的版本号这里用了cvs,pacman会认为比仓库里的旧,所以最好在pacman.conf里holdpkg一下。
 楼主| 发表于 2005-5-28 01:35:58 | 显示全部楼层
不推荐单独编译新的libxft的方式。虽然比较省事,但因为文件冲突问题会需要强制安装。而且也和官方的包不一致了。
回复 支持 反对

使用道具 举报

发表于 2005-5-28 10:13:39 | 显示全部楼层
这可是个好消息,等待新freetype2推出。

不知字型效果和firefly的算法比起来如何?贴个图看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-28 12:20:28 | 显示全部楼层
看firefly贴出的效果图,要比firefly的稍差。据freetype2这个补丁的维护者说,因为一些原因,某些部分最好在libXft中实现而不是在freetype2中(都是技术的玩意儿,俺看了半天米看懂)。

cary你个大懒虫,俺辛辛苦苦写个PKGBUILD,想找个小白鼠,你一句等待新freetype2推出就把俺打发了……

算了,还是我自己当小白鼠吧。完事儿的时候回来给大家汇报。下载xorg源码中……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-28 12:50:47 | 显示全部楼层
编译了xorg里的libXft。但是偶米安装。哈哈。忙。先不当小白鼠了。
回复 支持 反对

使用道具 举报

发表于 2005-5-28 14:25:29 | 显示全部楼层
firefly大侠贴的效果图,让兄弟们先一饱眼福 (firefly大侠不介意转他的图吧 :ask ),

第一张是firefly-patch的效果第二张是newfreetype2的效果

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2005-5-28 16:18:18 | 显示全部楼层
我下午来编译xorg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-28 16:32:25 | 显示全部楼层
to xiaosir:

兄弟编译的时候尽量用默认的makepkg.conf。不要加附加的优化参数。
做好了咱们可以和budaodao兄弟商量一下,把你做的包上传到他的服务器的archcn上给大家下载。
回复 支持 反对

使用道具 举报

发表于 2005-5-28 16:45:52 | 显示全部楼层
哥们,我习惯了包安装,对arch下的编译不怎么了解,我是进去makepkg -g,然后就直接makepkg,其他什么都没修改,这样应该没问题吧,这段时间都在gentoo上疯狂emerge,反而很少留意arch了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-28 16:59:44 | 显示全部楼层
:)只要/etc/makepkg.conf没有修改过,随便怎么makepkg都可以,都是按照官方默认的参数make的。哈哈。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表