用linux作为工作生产环境的几个需要解决的问题之一是:文档协作,即如何兼容Micro$oft Office格式的文档。

我一般的工作方式是:在linux下创建一个win7的虚拟机,安装常用的windows软件,office,QQ,teamview等。

写文档的时候,我会进入win虚拟机,使用office软件进行编写,保证其他大多数使用windows的同事可以正常打开我的文档。

读文档的时候,我在linux里使用wps。先后用过openoffice, libreoffice,wps。wps与M$兼容最好。虽然wps也不能保证完全兼容,但是就阅读而已,其linux版本的可用性和稳定性都非常好,尽管仍然存在一下小问题。例如在M$ office下排版2页的文档,到了wps上就变成了三页。

当出现影响阅读的问题时,我会打开虚拟机,在windows环境下完成阅读。在我用的这不到两年的时间里,这种情况还是非常少的。接下来要说的就是其中情况之一:

现象:

部分Micro$oft Office Word格式文档中的图片,流程图等内容,在linux wps环境下无法显示中文,如下图:

解决方法:

到windows环境下,将 C:\Windows\Fonts\ 目录下的内容,拷贝至 ~/.fonts/ 目录下, 如下图:

已经从虚拟机中拷贝至了临时共享目录 ~/Windows/Temp/Fonts 。

创建 ~/.fonts 目录,并将字体拷贝过来。

[tong@T7:~]
% mv ~/Windows/Temp/Fonts .fonts

备注一:这个文件夹一个500多MB。其实只需要拷贝几个字体过来就可以了。但是我并不知道要拷哪些,索性就都拷贝过来了。

备注二:关于什么程序在加载与管理 .fonts 这个目录,我并不清楚,目前也没有打算深入的研究。另外需要提到的还有另一个配置文件  ~/.fonts.conf

[tong@T7:~]
% cat ~/.fonts.conf
<?xml version="1.0"?><!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>~/.fonts</dir>
</fontconfig>
[tong@T7:~]
%

备注二: 字体的管理是由 Fontconfig 程序完成的。

目录 ~/.fonts 也是由该程序进行加载。这是旧版本中的加载目录,在新版本中这个路径已经不被推荐,推荐的路径为:~/.local/share/fonts. 参加 Font_paths

上一段的蓝色字是从archwiki中的描述,严格来讲这是不正确。将被废止的是~/.fonts.conf, ~/.fonts.conf.d/, ~/.fontconfig/*.cache-* 而并不是~/.fonts/目录,因为这个目录是在$XDG_CONFIG_HOME/fontconfig/fonts.conf中指定的。当然我想它的意思应该是说,以后不会再指向那个地方了。详细可以见我的另一篇博:[daily][archlinux][fonts] 在linux下管理字体

结果:

关闭文档,重新使用wps打开,无需重启,无需logout。

显示正常啦~~~ :- )

---------------------- update @ 20161126 -----------------------

虽然解决了wps的问题,但是thunderbird又出了问题,因为我打包了win的字体。所以thunderbird的默认中文字体不在使用adobe了变得巨丑。

然后我尝试删掉了我打包的win字体,重新安装了ttf-ms-fonts字体包,并没有解决wps的问题。

这时候有两个解决方案:

  A。 到windows里查看这个文件,找到这个图里面的这几个中文是用什么中文字体写的,然后只拷贝这个过来。这并不能一劳永逸。

  B。研究字体管理机制,从根上搞定。截止到此刻,还没有搞定。[daily][archlinux][fonts] 在linux下管理字体

  

[daily][troubleshoot][archlinux][wps][font] wps文档中的图内容无法显示中文的更多相关文章

  1. 利用java从docx文档中提取文本内容

    利用java从docx文档中提取文本内容 使用Apache的第三方jar包,地址为https://poi.apache.org/ docx文档内容如图: 目录结构: 每个文件夹的名称为日期加上来源,例 ...

  2. MVC架构下,使用NPOI读取.DOCX文档中表格的内容

    1.使用NPOI,可以在没有安装office的设备上读wiod.office.2.本文只能读取.docx后缀的文档.3.MVC架构中,上传文件只能使用form表单提交,转到控制器后要依次实现文件上传. ...

  3. JavaScript之向文档中添加元素和内容的方法

    一.非DOM方法添加 1.document.write() <html xmlns="http://www.w3.org/1999/xhtml"> <head&g ...

  4. Java解析word,获取文档中图片位置

    前言(背景介绍): Apache POI是Apache基金会下一个开源的项目,用来处理office系列的文档,能够创建和解析word.excel.ppt格式的文档. 其中对word文档的处理有两个技术 ...

  5. 【Linux】用grep在文档中查找内容

    有时候,我们需要在文档中查找一些内容,常用grep.它在文档查找相关内容并输出匹配行. > 查找某关键字 在system.log中,查找包含keyword的行 grep 'keyword' sy ...

  6. 在Word2010文档中显示域代码而非域值

    当Word2010文档中含有域内容时,默认情况下显示域值,这样可以使插入的域内容清晰明了.用户可以根据需要选择显示域代码或显示域值,操作步骤如下所述: 步骤/方法 第1步,打开Word2010文档窗口 ...

  7. 禁用wps的云文档,恢复到清爽的状态

    wps安装完成后,默认会开启云文档功能,每次打开表格.文档都会显示乱七八糟的一些东西,很麻烦 不得已只好手动为wps“瘦身”: 在wps表格或者文档的快捷方式上右键,选择打开文件所在位置 找到一个最新 ...

  8. php解析word,获得文档中的图片

    背景 前段时间在写一个功能:用原生php将获得word中的内容并导入到网站系统中.因为文档中存在公式,图片,表格等,因此写的比较麻烦. 思路 大体思路是先将word中格式为doc的文档转化为docx, ...

  9. 可以粘贴Word文档中图片的编辑器

    Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...

随机推荐

  1. jQuery入门第三天

    每个HTML元素根据继承属性都有父parent元素. 举个例子,h3 元素的父元素是 <div class="container-fluid">,<div cla ...

  2. Java keytool 使用总结

    Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key)和证书(certificates)存在一个称为keystore的文件中. 在keystore里,包含两种数据: ( ...

  3. React版本修改内容

    React新版本(0.12.2)在2014年12月18日发布,对比了我之前用的v0.11.2版本改动很大,基本的写法被扩展,让我顿时感觉自己又要重新开始.坑啊~ 事已至此,必须重新适应,首先我们来看看 ...

  4. iOS数据持久化文件读写之偏好设置

    很多iOS应用都支持偏好设置,比如保存用户名.密码.字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能.每个应用都有个NSUserDefaults实例,通过它来存取偏好设置.比如, ...

  5. ASP.net的url重写

    http://blog.csdn.net/windok2004/article/details/2432691 1. 有关于URL的重写,本文也只是拿来主意.相继有MS的组件“URLRewriter” ...

  6. BZOJ4657 : tower

    显然只有横向和纵向的两个炮塔才有可能冲突. 考虑最小割,将每个炮塔所有能攻击到的位置建点,相邻之间连无穷的边,表示前缀和关系,即选了一个点,就必须要选所有比它近的点. 属于横向炮塔的点向$S$连边,容 ...

  7. CF 22B. Bargaining Table

    水题.好久没有写过优化搜索题了. #include <cstdio> #include <cstring> #include <iostream> #include ...

  8. Update UI from an asynchronous thread

    One of the most common tasks you need to perform in a Windows Phone application is updating the UI f ...

  9. 李洪强iOS经典面试题126

    1.#import和#include的区别,@class代表什么? @class一般用于头文件中需要声明该类的某个实例变量的时候用到,在m文件中还是需要使用#import 而#import比起#inc ...

  10. winform 打印控件

    (1)PageSetupDialog1    打印设置窗口  (2)PrintDocument     向打印机输送的对象 事件:PrintPage   对于打印的每一页都执行一次 (3)PrintP ...