OpenOffice格式转换中文乱码终极解决方案

柔情只为你懂 2023-06-21 12:22 126阅读 0赞

用openOffice 在windows开发环境下转换ppt,word到pdf,里面的文字无论中英文都能正常显示,但是部署到了生产环境(CentOS 7.3.2)之后,转换的结果全部是乱码,于是在网上找了找处理方式和步骤,但是都是到了中间出现了问题,但是多个文档查找后成功解决了问题,特意转发过来,希望对大家有帮助。

1、环境

CentOS release 7.3.2
已安装:openoffice4.1.7

下载地址:http://www.openoffice.org/download/index.html

2、解决问题的大致流程

乱码的主要原因是字体缺失,我们只需要把windows系统的字体Copy过去,然后将字体加载进系统,然后重启OpenOffice4即可。

第一步:

windows系统的字体文件路径:C:\Windows\Fonts

Linux 接收字体的路径:/usr/share/fonts

创建一个中文文件夹,并进入

  1. [root@dsbdevserver fonts]# mkdir chinese
  2. [root@dsbdevserver chinese]# cd chinese

将文件全部复制过去:如图

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lleGlhb21vZGVtbw_size_16_color_FFFFFF_t_70

第二步:

  1. 给字体赋予权限并进行一下操作:
  2. [root@dsbdevserver chinese]# chmod 755 *.TTF
  3. [root@dsbdevserver chinese]# chmod 755 *.TTC
  4. [root@dsbdevserver chinese]# mkfontscale
  5. (如果提示 mkfontscale: command not found,需自行安装 # yum install mkfontscale)
  6. [root@dsbdevserver chinese]# mkfontdir
  7. [root@dsbdevserver chinese]# fc-cache -fv
  8. (如果提示 fc-cache: command not found,则需要安装# yum install fontconfig )

第三步:

杀掉已有的openoffice

  1. [root@dsbdevserver program]# ps aux |grep openof
  2. root 13964 0.0 1.7 945480 69788 pts/1 Sl 16:03 0:01 /opt/openoffice4/program/soffice.bin -accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager -nologo -headless -nofirststartwizard
  3. root 17517 0.0 0.0 112724 980 pts/1 S+ 16:51 0:00 grep --color=auto openof
  4. [root@dsbdevserver program]# kill -9 13964
  5. [root@dsbdevserver program]# ./soffice: 121: 13964 已杀死 "$sd_prog/$sd_binary" "$@"
  6. [1]+ 退出 137 ./soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard

重启openoffice

  1. [root@dsbdevserver program]# ./soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard &
  2. [1] 17546
  3. [root@dsbdevserver program]# ps aux |grep openof
  4. root 17556 47.0 1.5 663000 62072 pts/1 Sl 16:51 0:00 /opt/openoffice4/program/soffice.bin -accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager -nologo -headless -nofirststartwizard
  5. root 17565 0.0 0.0 112720 976 pts/1 S+ 16:51 0:00 grep --color=auto openof

第四步:检验是否成功

我看一下我生成的图片
watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lleGlhb21vZGVtbw_size_16_color_FFFFFF_t_70 1

成功了

参考文档:

https://blog.csdn.net/fanjin287659245/article/details/80360767

https://www.cnblogs.com/anlegou/p/11096148.html

https://blog.csdn.net/u013132051/article/details/53514696

发表评论

表情:
评论列表 (有 0 条评论,126人围观)

还没有评论,来说两句吧...

相关阅读

    相关 中文解决方案

    一、中文问题的来源 计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理。随着计算机的发展,为了适应世界其它