5. X Window

欢迎!在这里您将找到最有用的泰米尔语工具。即使是基本用户,现在也可以拥有接近完全泰米尔语本地化的办公套件。泰米尔语 GUI 在 KDE 或 GNOME 环境中使用本地化设置实现(本文档稍后会详细介绍),泰米尔语字符输入通过键盘管理程序实现。但首先您需要获取一些字体来完成这一切。

5.1. 安装字体

默认情况下,Linux 使用 "pcf" 字体,也可以使用 "bsd" 字体;这些是位图字体,可以在 X 环境下显示和打印。但是,与所有位图字体一样,这些字体在打印时并不总是 所见即所得 (WYSIWYG)。对于高质量打印,您需要 "Type-I" 字体 (Adobe),使用 Ghostscript 需要 PS 字体,并且使用 "afm" 字体(美国字体度量标准)。但是大多数免费提供的泰米尔语字体都是 TrueType (ttf) 字体。接下来我们将看到如何使所有这些字体工作。

5.2. 位图字体

位图字体是一个点阵;因此,这些字体与设备无关。 75 dpi 的字体,对于显示来说已经足够好,在您的 1200 dpi 打印机中仍然是 75 dpi 的字体。因此,位图字体通常是为特定目的而创建的,例如在显示器上显示或用于打印。Linux 通常使用bdfpcf字体用于控制台或 X 显示。 像 dvipsdvi 创建的字体是与打印机相关的位图字体。 这些字体占用很大的空间,但是程序通过在需要时以特定的分辨率动态创建它们来避免这种情况。

您可以从以下位置获取各种应用程序的位图泰米尔语字体:

当应用程序向 X 服务器发出字体请求时,XFree86 会在特定目录中查找字体。 这意味着当您向系统添加字体并希望 X 服务器识别它们时,您需要告诉 X 这些字体的位置。 只需使用以下命令将目录添加到您的字体路径中

      mkfontdir
      xset fp+ <directory>
      

其中 family directory 是您存放字体的目录名称。 完成此操作后,您必须使用命令请求服务器注册此会话

xset fp rehash

由于您希望这些命令自动运行,因此您应该将它们放在您的.xinitrc文件(或可能是您的.Xclients.xsession文件——这取决于您启动 X 的方式。 另一种自动设置命令的方法是编辑XF86Config。 例如,要在 X 启动时将 /usr/share/fonts/myfonts 添加到字体路径,请编辑XF86Config像这样

	...
	Section "Files"
	...
	FontPath /usr/share/fonts/myfonts
	...
	EndSection
		...

编辑的优点XF86Config在于结果更改是系统范围的。

5.3. TrueType 字体

您可以从 http://tamil.homelinux.org/ 的下载部分获取 TSCII、TAB 和 TSCII1.7 编码的 TrueType 字体。 这些字体的备用来源是

TSCII - http://www.tamil.net/tscii/

TAB - http://www.tamilnet99.org/http://www.thinnai.com

TSCII-1.7(实验性) - http://groups.yahoo.com/group/tscii/files/

安装这些字体要么太容易,要么太困难。 如果您拥有最新的发行版之一,例如 RedHat7.x 或 Mandrake7.x,则非常容易。 这是因为 RedHat(以及 Mandrake,可能还有 SuSE)都预先打包了 xfs。 也很容易找到适用于 Debian 的 xfs,但据我所知,Debian 没有打包 xfs

Debian 用户现在被重定向到这个关于 Debian 中 TrueType 字体的迷你教程 - http://www.linuxdoc.org/HOWTO/mini/TT-Debian-3.html

还有另一个实用程序 xfstt,它更容易安装和使用,但是 xfs 正在变得流行,因为它除了 TrueType 字体之外,还可以处理 Adobe Type1 字体。

如果您没有其中任何一个,请考虑从 http://www.xfree86.org 获取 xfs(不要与 Silicon Graphics (SGI) 赞助的 XFS 日志文件系统混淆)。

或从 http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/ 获取 xfstt。 您也可以从 http://independence.seul.org/ 获取 xfstt 二进制文件,或者在 Linux Gazette 上阅读有关 xfstt 的文章,网址为

5.3.1. 安装 TrueType 字体

您需要以 root 用户身份运行这些命令。 如果您当前以普通用户身份登录,则可以使用 su 立即执行此操作。

您现在应该具有 xfs 可用性,否则请使用上一节中的步骤获取它。

在某些发行版(如 Mandrake)中,安装 TrueType 字体非常容易。 只需转到 DrakConf 并使用字体安装实用程序 - 按照一些简单的步骤操作,您就可以拥有所有字体。

将您的 TrueType 字体放在您想要的任何目录中。 例如,/usr/share/tamiltt.

从包含新字体的目录中,键入

ttmkfdir -m 50 -o fonts.scale

这将创建一个文件,其中包含 xfs 服务器所需的字体信息。 选项-m 50指定字体的放大倍数; 我见过一些泰米尔语字体仅在以下情况下才能正常工作-m 100.

然后键入

mkfontdir

现在您可以将新目录添加到您的 xfs 搜索路径。 Red Hat(和类似 Red Hat 的)发行版带有一个简洁的实用程序来执行此操作,称为 chkfontpath。 像这样运行 chkfontpath

chkfontpath --add /usr/share/tamiltt

这将把新的字体目录添加到您的字体路径中。

(其他拥有 xfs 字体服务器但没有ttf支持的用户可以通过编辑他们的 xfs 配置文件来做到这一点。

如果您的系统上已安装 xfs,您应该查看它正在哪个端口上运行。 您可以使用以下命令执行此操作

ps ax grep xfs

然后使用以下命令检查您的 XFree86 字体路径

xset -q

如果您的字体路径包含类似 "unix:/端口号" 的内容,其中端口号是服务器正在运行的端口,那么您已经正确设置了 xfs。 否则,您应该使用以下命令将其添加到您的 XFree86 字体路径中

xset fp+ <unix/:端口号>

xset fp rehash

Note

端口号是一个数值,类似于 7100。

您可以通过编辑您的文件永久添加字体路径.xinitrc。 要在系统范围内添加它,请编辑您的 XF86Config 文件(在/etc/X11/XF86Config, /etc/X11/XF86Config-4, /etc/XF86Config,或/usr/X11R6/lib/X11/XF86Config下),方法是将以下行添加到Files部分

FontPath "unix/:端口号"

这是一个它应该是什么样子的例子

        ...
        Section Files
        ...
        
        FontPath "unix/:-1"
        ...
        EndSection
        ...
	

如果 xfs 已正确安装,那么您可以像这样以 root 用户身份重新启动它

service xfs restart

重新启动 xfs 后,最好重新启动您的 X 会话。

由于大多数泰米尔语用户都会这样做,让我总结一下必要的步骤。

  1. 成为 root 用户。

  2. 下载并复制一些ttf字体到一个目录(例如/usr/share/fonts/tamiltt).

  3. 转到该目录并执行 ttmkfdir -m 50 -o fonts.scale (如果您的字体不动弹,请使用-m 100选项)。

  4. 执行 mkfontdir . (请注意,您需要绝对或用点指定目录)。

  5. 执行 chkfontpath --add /usr/share/tamiltt 。 (请记住,此命令仅在类似 Red Hat 的发行版中可用。如果您可以成功运行此命令,请跳过剩余步骤并重新启动 X 服务器)。

  6. 执行 ps ax | grep xfs 并获取 xfs 端口号。

  7. 检查您的字体路径: xset -q

    如果您的字体路径包含类似 "unix:/端口号" 的内容(例如 "unix: 7100"),请将其添加到您的 xfont 路径

    xset fp+ unix: 端口号

    xset fp rehash

  8. 最好重新启动 X 服务器。

  9. 如果一切正常,请更新您的.xinitrc文件,无论它在哪里。

  10. 玩得开心!

5.4. 其他字体服务器

还有另一个项目,X-TrueType Server,值得关注,网址为 http://www.io.com/~kazushi/xtt/

另一个范围更广的有趣项目是 FreeType;查看 http://www.freetype.org

我个人认为 xfs 是一个很棒的实用程序;它可以处理 Type1 字体(如果您使用 GIMP 等程序,则非常有用)。 此外,独立的 xfs 服务器未连接到 X 服务器。 这意味着您可以为远程 X 显示器提供这些字体。 我在主机中运行的 VNC Server 和在 Windows 中本地运行的 VNC Viewer 广泛使用了此功能。 在为我的雇主工作时拥有泰米尔语 Linux 桌面真是一种奢侈。