# [半解决，知其然了]编译OpenOffice.org 2.3.1中文全是框框

## liufeng

今天编译了三遍了。

一开始LINGUAS设置成zh，结果没有加入中文支持。英文正常，中文是框。

第二次加上了zh_CN和zh_TW，界面及输入的中文就都成了框了。

当时以为是zh_TW导致字体问题，于是把它去掉了，故障依旧。

请问这是什么问题，一般如何解决呢？

2007年12月14日的portage，内核gentoo-sources，X为xorg-x11

GNOME版本为2.20.1.

编译时USE="cairo cups dbus eds firefox gnome gstreamer gtk ldap pam -binfilter -debug -java -kde -mono -odk -seamonkey -sound -webdav -xulrunner" LINGUAS="zh_CN"

----------

## SeaTiger

我不是很熟識linux x window的中文,不過這情況會不會是你沒有安裝中文字體??

----------

## liufeng

我不是很熟悉中文字体方面的情况，不过我的firefox浏览器中文字体显示是正常的。我用的字体文件是在Ubuntu下备份的，那些是从DeepXP镜像里弄出来的。/etc/fonts/local.conf用的是从Ubuntu下面的备份，在Ubuntu下面正常。

我做了个截图：http://www.cnliufeng.com/font.png

----------

## SeaTiger

你的

[系統]->[Preference]->[Apperence(外觀??)]

在[外觀]窗內[fonts(字體??)]的設置如何?也許做截圖看看,問題可能是這裡面的設置沒有中文字體,英文的預定設置是sans,那只有英文字型,要全換上中文的.

PS:你是只有openoffice是這情況還是其他中文軟體也是同一情況?

----------

## SeaTiger

剛找了一下openoffice的use,

[ebuild  N    ] app-office/openoffice-2.3.1  USE="dbus gnome gstreamer gtk java kde ldap pam -binfilter -cairo -cups -debug -eds -firefox -mono -odk -seamonkey -sound -webdav -xulrunner" LINGUAS="-af -ar -as_IN -be_BY -bg -bn -br -bs -ca -cs -cy -da -de -dz -el -en -en_GB -en_US -en_ZA -eo -es -et -fa -fi -fr -ga -gl -gu_IN -he -hi_IN -hr -hu -it -ja -km -ko -ku -lt -lv -mk -ml_IN -mr_IN -nb -ne -nl -nn -nr -ns -or_IN -pa_IN -pl -pt -pt_BR -ru -rw -sh_YU -sk -sl -sr_CS -ss -st -sv -sw_TZ -ta_IN -te_IN -tg -th -ti_ER -tn -tr -ts -uk -ur_IN -ve -vi -xh -zh_CN -zh_TW -zu"

試一下把"zh_CN bg"加回去.

----------

## liufeng

 *junksiu wrote:*   

> 你的
> 
> [系統]->[Preference]->[Apperence(外觀??)]
> 
> 在[外觀]窗內[fonts(字體??)]的設置如何?也許做截圖看看,問題可能是這裡面的設置沒有中文字體,英文的預定設置是sans,那只有英文字型,要全換上中文的.
> ...

 

新的截图在这里http://www.cnliufeng.com/font2.png。

我这里的字体确实都是Sans。我在这里没法选择“宋体”，选了后就成了Tahoma Normal。我最后选择了文泉驿中文字体。结果OOo没有变化。

从这里修改设置不用重启X吧？

----------

## SeaTiger

把[應用程序字體]也改成宋體試一下.在這改是不用重啟x的.

雖然tahoma是unicode字體,不過不包括中文,如果想保持用一種字體,那就要用ARIALUNI.TTF(arial unicode ms).

如果再不成就要試一下我上一個回應的方法,加上"zh_CN bg"再編譯一次了.

----------

## SeaTiger

PS:你說看中文網頁沒有問題,能不能查到那什麼字體??

----------

## liufeng

 *junksiu wrote:*   

> 剛找了一下openoffice的use,
> 
> [ebuild  N    ] app-office/openoffice-2.3.1  USE="dbus gnome gstreamer gtk java kde ldap pam -binfilter -cairo -cups -debug -eds -firefox -mono -odk -seamonkey -sound -webdav -xulrunner" LINGUAS="-af -ar -as_IN -be_BY -bg -bn -br -bs -ca -cs -cy -da -de -dz -el -en -en_GB -en_US -en_ZA -eo -es -et -fa -fi -fr -ga -gl -gu_IN -he -hi_IN -hr -hu -it -ja -km -ko -ku -lt -lv -mk -ml_IN -mr_IN -nb -ne -nl -nn -nr -ns -or_IN -pa_IN -pl -pt -pt_BR -ru -rw -sh_YU -sk -sl -sr_CS -ss -st -sv -sw_TZ -ta_IN -te_IN -tg -th -ti_ER -tn -tr -ts -uk -ur_IN -ve -vi -xh -zh_CN -zh_TW -zu"
> 
> 試一下把"zh_CN bg"加回去.
> ...

 

我的emerge -pv openoffice的输出结果：

[ebuild   R   ] app-office/openoffice-2.3.1  USE="cairo cups dbus eds firefox gnome gstreamer gtk ldap pam -binfilter -debug -java -kde -mono -odk -seamonkey -sound -webdav -xulrunner" LINGUAS="zh_CN -af -ar -as_IN -be_BY -bg -bn -br -bs -ca -cs -cy -da -de -dz -el -en -en_GB -en_US -en_ZA -eo -es -et -fa -fi -fr -ga -gl -gu_IN -he -hi_IN -hr -hu -it -ja -km -ko -ku -lt -lv -mk -ml_IN -mr_IN -nb -ne -nl -nn -nr -ns -or_IN -pa_IN -pl -pt -pt_BR -ru -rw -sh_YU -sk -sl -sr_CS -ss -st -sv -sw_TZ -ta_IN -te_IN -tg -th -ti_ER -tn -tr -ts -uk -ur_IN -ve -vi -xh -zh_TW -zu" 0 kB 

bg是国家名还是什么特殊含义？

“你說看中文網頁沒有問題,能不能查到那什麼字體??” 我没看明白啊？firefox内中文字体是正常的，字体除了系统自带的（不了解Gentoo有没有），都是在DeepXP里弄到的中文字体，然后就是萤火飞中文字型，为读繁体中文用的。在Ubuntu时是正常的，这些字体文件和local.conf文件都是我在装Gentoo之前从我前一个系统Ubuntu里备份出来的。

----------

## SeaTiger

firefox字體正常,基本上排除了x視窗字庫的問題,那就是openoffice的問題了,我現在的openoffice還在編譯中,完成了再討論.

還有其他高手嗎??

----------

## liufeng

 *junksiu wrote:*   

> firefox字體正常,基本上排除了x視窗字庫的問題,那就是openoffice的問題了,我現在的openoffice還在編譯中,完成了再討論.
> 
> 還有其他高手嗎??

 

谢谢。

----------

## SeaTiger

可以貼一下你的emerge --info嗎?

----------

## liufeng

```
Portage 2.1.4_rc9 (default-linux/x86/2007.0/desktop, gcc-4.1.1, glibc-2.7-r1, 2.6.23-gentoo-r3 i686)

=================================================================

System uname: 2.6.23-gentoo-r3 i686 Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz

Timestamp of tree: Thu, 13 Dec 2007 23:16:01 +0000

ccache version 2.4 [enabled]

app-shells/bash:     3.2_p17-r1

dev-lang/python:     2.4.3-r4, 2.5.1-r4

dev-python/pycrypto: 2.0.1-r5

dev-util/ccache:     2.4-r7

sys-apps/baselayout: 1.12.10-r5

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.13, 2.61-r1

sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.4.0-r4

sys-devel/libtool:   1.5.24

virtual/os-headers:  2.6.23-r2

ACCEPT_KEYWORDS="x86 ~x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -mtune=i686 -march=nocona -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT=""

CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"

CXXFLAGS="-O2 -mtune=i686 -march=nocona -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://adelie.polymtl.ca/ ftp://gentoo.arcticnetwork.ca/pub/gentoo/ http://gentoo.arcticnetwork.ca/ ftp://mirrors.tera-byte.com/pub/gentoo http://gentoo.mirrors.tera-byte.com/ http://gentoo.osuosl.org/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.mirrors.pair.com/ "

LANG="zh_CN.utf8"

LC_ALL="zh_CN.utf8"

LINGUAS="zh zh_CN"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"

USE="X aac acl acpi alsa avahi bash-completion berkdb bitmap-fonts cairo cdr cjk cli cracklib crypt cups dbus dell dri dvd dvdr dvdread eds emacs emboss encode esd evo fam ffmpeg firefox flac fortran gdbm gif glitz gnome gpm gstreamer gtk hal iconv ipod isdnlog jpeg kerberos ldap mad midi mikmod mp3 mpeg mpg mudflap ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl png pppd python qt3support quicktime readline reflection sdl session spell spl ssl svg tcpd tiff truetype truetype-fonts type1-fonts unicode vorbis win32codecs x86 xml xorg xv zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="synaptics keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="zh zh_CN" USERLAND="GNU" VIDEO_CARDS="nvidia"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

----------

## SeaTiger

嘩,liufeng大哥,你有用了多少台電腦去編譯啊?昨天開始了就去睡,醒來發現死了,再編,現在快10個小時了,還沒完  :Shocked: 

----------

## Halahad

用openoffice-bin才是硬道理.

----------

## liufeng

 *junksiu wrote:*   

> 嘩,liufeng大哥,你有用了多少台電腦去編譯啊?昨天開始了就去睡,醒來發現死了,再編,現在快10個小時了,還沒完 

 

我这里倒是很快啊。估计是双核+2G内存的作用吧。之前我一直担心编译废时间，现在看来真是好快啊，以前我以为很大的包，像GNOME、firefox、OOo，TeX之类的，都是很快就完了。我自己都挺吃惊的。

谢谢您的帮助，如果把您的机器弄坏了实在不好意思。如果实在不行，我就试试OOo-bin，再不行的话就继续研究TeX  :Wink:  。

----------

## liufeng

 *liufeng wrote:*   

>  *junksiu wrote:*   嘩,liufeng大哥,你有用了多少台電腦去編譯啊?昨天開始了就去睡,醒來發現死了,再編,現在快10個小時了,還沒完  
> 
> 我这里倒是很快啊，用的DELL XPS M1330的笔记本。估计是双核+2G内存的作用吧。之前我一直担心编译废时间，现在看来真是好快啊，以前我以为很大的包，像GNOME、firefox、OOo，TeX之类的，都是很快就完了。我自己都挺吃惊的。
> 
> 谢谢您的帮助，如果把您的机器弄坏了实在不好意思。如果实在不行，我就试试OOo-bin，再不行的话就继续研究TeX  。

 

----------

## liufeng

 *Halahad wrote:*   

> 用openoffice-bin才是硬道理.

 

我试试去。

不过其中的原因倒让人困惑。

----------

## liufeng

emerge了openoffice-bin，中文显示问题解决了。不过字体怎么看着有点别扭，截图在这：http://www.cnliufeng.com/font3.png，从哪里可以修改吗？

还有就是，这样的话似乎是GNOME菜单里的图标都没了（我也忘了emerge openoffice有没有图标了），不过不影响使用。

为什么emerge openoffice时中文变成框框，是我少做了什么，还望高手告知。

----------

## SeaTiger

我是用emerge,剛剛編完時試了一下把介面改為中文,情況也是框框,而且再開oowriter就會自動退出.要把 ~/.ooo-2.0刪掉才成.

我在use中補回cjk,再emerge -avDN world,自動更新了以下的東西:

poppler-data

slang

ebdftopcf-2

groff-1.19.2-r1

arphicfonts

kochi-substitude

baekmuk-fonts

ghostscript-gpl

php

再開oowriter,把介面改為中文,重開,顯示正常了.liufeng試一下emerge --sync ; emerge --avDN world看看有沒有什麼東西更新.

以下是我看emerge  --info

```
Portage 2.1.4_rc9 (default-linux/x86/2007.0, gcc-4.2.2, glibc-2.7-r1, 2.6.23.9 i686)

=================================================================

System uname: 2.6.23.9 i686 Intel(R) Pentium(R) 4 CPU 1.70GHz

Timestamp of tree: Wed, 12 Dec 2007 20:30:01 +0000

distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]

ccache version 2.4 [enabled]

app-shells/bash:     3.2_p17-r1

dev-java/java-config: 1.3.7, 2.1.3

dev-lang/python:     2.5.1-r4

dev-util/ccache:     2.4-r7

sys-apps/baselayout: 1.12.10-r5

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.13, 2.61-r1

sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.4.0-r4

sys-devel/libtool:   1.5.24

virtual/os-headers:  2.6.23-r2

ACCEPT_KEYWORDS="x86 ~x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-mtune=pentium4 -march=pentium4 -O2 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/bind"

CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"

CXXFLAGS="-mtune=pentium4 -march=pentium4 -O2 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="ccache distcc distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"

LINGUAS="zh_CN en en_US zh_TW"

MAKEOPTS="-j5"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="64bit 7zip X aalib acl acpi admin afs alsa amd animgif apache2 ares artworkextra aspnet2 asterisk async auth authdaemond authfile autoipd automount avalon-framework avalon-logkit background bash-completion bbdb bdf berkdb bgpclassless bidi binary-drivers bind-mysql bindist bitmap-fonts blas bonobo boost branding bzip2 c++ cdr cgi charconv checkpath chroot cjk cli colordiff command-args contentcache coverpage cracklib crypt cscope ctype curl cursors dbi dbus dbx devhelp device-mapper dga dlz dmi dmx dnd dnotify dri dvb dvd dvdr dvdread dynamicplugin emacs expat fastcgi fbcon flatfile fortran ftp gb gd gdbm gdm geoip gif gmp gnome gnutls gpib gpm gsl gstreamer gtk gtkhtml hal hash html http icons iconv imap inifile innodb inode insecure-savers java javascript jikes jpeg jpeg2k kde kdm kdrive ldap leim libcaca libgda libssh2 libwww libyaml log4j lua m17n-lib mcal mdb mhash midi mime mmap mmx mmxext mng modplug mpeg mpi mpm-prefork mudflap mysql mysqli ncurses nis nls nptl nptlonly odbc offensive ogg openexr opengl openmp pam pam_chroot pam_nuauth pam_timestamp pcntl pcre pdf perl php png posix prelude python q32 q8 qt3 quicktime rdesktop readline reflection samba session sharedext sharedmem simplexml slang sndfile sockets socks5 spell spl sse sse2 ssl startup-notification svg syslog szip tcl tcpd tetex threads threadsafe tidy tiff tk tokenizer truetype truetype-fonts type1-fonts unicode vcd vga vhosts vim vim-pager vim-syntax vim-with-x vorbis vroot wmf x264 x86 xattr xcomposite xinetd xml xmldoclet xmlreader xmlrpc xmlwriter xorg xpm xscreensaver xsl xslt xv xvid zip zlib zsh-completion" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES

="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfo ntz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="zh_CN en en_US zh_TW" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i740 i810 imstt mach64 mga neomagic nsc nv r128 radeon rendition s3 s3virge savage silico nmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
```

Last edited by SeaTiger on Mon Dec 17, 2007 12:55 pm; edited 1 time in total

----------

## SeaTiger

 *liufeng wrote:*   

> emerge了openoffice-bin，中文显示问题解决了。不过字体怎么看着有点别扭，截图在这：http://www.cnliufeng.com/font3.png，从哪里可以修改吗？
> 
> 还有就是，这样的话似乎是GNOME菜单里的图标都没了（我也忘了emerge openoffice有没有图标了），不过不影响使用。
> 
> 为什么emerge openoffice时中文变成框框，是我少做了什么，还望高手告知。

 

就是[外觀首選項]->[字體]->[應用程序字體]那兒改.

我猜你一開始時中文介面出框框,是因為你把字體抄到gentoo時,有一些設定做漏了,openoffice檢測不到中文字庫,或是找不到對應的替代字庫,就變框框了.

----------

## liufeng

 *junksiu wrote:*   

>  *liufeng wrote:*   emerge了openoffice-bin，中文显示问题解决了。不过字体怎么看着有点别扭，截图在这：http://www.cnliufeng.com/font3.png，从哪里可以修改吗？
> 
> 还有就是，这样的话似乎是GNOME菜单里的图标都没了（我也忘了emerge openoffice有没有图标了），不过不影响使用。
> 
> 为什么emerge openoffice时中文变成框框，是我少做了什么，还望高手告知。 
> ...

 

确实有这个可能。不过OOo会使用和别的程序差异很大的字体吗？为什么我这里firefox之类的其它程序都很正常呢？

----------

## akar

 *liufeng wrote:*   

> 不过OOo会使用和别的程序差异很大的字体吗？为什么我这里firefox之类的其它程序都很正常呢？

 

　　這是因為 OpenOffice 自己實現了幾乎所有的字體渲染的工作，此架構的主因是要實現跨平台。

　　所以平台上關於字體的設置一般都對她不起作用。

　　OOo 對不同的本地化（locale）都有其自己的預設字體，要像之前說的通過界面去設定替代字體，用戶設定後應該是保存在這文件：

 *Quote:*   

> ~/.ooo-2.0/user/registry/data/org/openoffice/Office/Common.xcu

 

----------

## liufeng

 *akar wrote:*   

>  *liufeng wrote:*   不过OOo会使用和别的程序差异很大的字体吗？为什么我这里firefox之类的其它程序都很正常呢？ 
> 
> 　　這是因為 OpenOffice 自己實現了幾乎所有的字體渲染的工作，此架構的主因是要實現跨平台。
> 
> 　　所以平台上關於字體的設置一般都對她不起作用。
> ...

 

谢谢！

----------

