amtoaer

晓风残月

叹息似的渺茫,你仍要保存着那真!
github
x
telegram
steam
nintendo switch
email

arch系发行版安装windows字体

背景#

日常生活中,总是会有一些奇奇怪怪的需求需要使用到office。对linux用户来说,虽然可以用wps代替ms office办公套件,但还会面临一个很大的问题:没有 windows 的字体库!

试想一下,作业要求提交使用微软雅黑字体的 word 文档,而linux上根本没有这个字体,你要怎么办?打开老师做的 ppt 课件,结果因为缺少字体而处处错位,又要怎么办?…

无数次面临这种问题之后,我萌生了安装 windows 字体的想法。

注:本文记录了整个打包流程,如果想要直接获取打包好的软件包,请点击此处

安装#

查了查,网上的解决方法大部分是把 windows 的字体目录挂载过来,然而像我这种 linux 单系统用户肯定就不能这么操作了 XD

于是,我打开了万能的arch wiki,根据指引来到了ttf-ms-win10aur界面,在安装前首先看一下作者的置顶评论:

FAQ, please read before posting:

  1. I get an error that the sources cannot be downloaded: Please read the instructions on the top of the PKGBUILD.
  2. Some fonts are missing in my copy of Windows (e.g., holomdl2, corbel, chandra, …): It seems that Microsoft distributes some fonts only with some Windows versions. You can just comment out the corresponding line in the PKGBUILD and then build with “makepkg –skipchecksums”.
  3. Some fonts have different checksums: We keep the checksums synchronized with our own Windows installations that are regularly updated. Different Windows versions, different ISOs etc. may contain fonts in different versions/variants. Just build the package using “makepkg –skipchecksums”.
  4. Why does the version not correspond to the latest Windows 10 build: If fonts have not changes between builds, there is no reason to change the version number of this package.
  5. Why are some fonts (e.g., traditional chinese, japanese etc.) not included here, not even in the corresponding split packages: We currently only include fonts that are installed on a standard Windows installation, without additional feature-on-demand packages (see: https://docs.microsoft.com/en-us/typography/fonts/windows_10_font_list).

嗯嗯.. 说的已经很明白啦,接着就先克隆一下项目:

git clone https://aur.archlinux.org/ttf-ms-win10.git
cd ttf-ms-win10

听他的,先看一下PKGBUILD

vim PKGBUILD

首先是一段版权声明,在 windows 系统以外的地方使用Microsoft fonts是违法的。

估计是为了避免法律问题,它并没有自带windows的字体,而是给出了两种方法:

  1. 从当前已有的 windows 系统获取(如果有的话我就直接挂载了啊喂!)
  2. 从 windows 的安装包中提取

所以就按着他的步骤来吧:

  • 这里下载 windows10 安装包

  • 打开iso镜像,解压出sources/install.wim

  • 安装wimlib并解压wim格式

    sudo pacman -S wimlib
    # 切换到install.wim所在的目录
    wimextract install.wim 1 /Windows/{Fonts/"*".{ttf,ttc},System32/Licenses/neutral/"*"/"*"/license.rtf} --dest-dir fonts
    
  • 将解压出的字体全都放到PKGBUILD所在目录,执行:

    makepkg
    

    不出所料,果然出现了他说的第三点问题,不同 windows 版本可能会含有同一字体的不同版本,导致哈希值检验出错,脚本检验失败自动退出。

    解决办法也像他说的,只需要跳过检验就好了:

    makepkg –skipchecksums
    

经过漫长的等待,应该已经打包了很多种语言的包出来,接着只需要:

sudo pacman -U ./ttf-ms-win10-zh_cn-version.pkg.tar.xz

就成功啦!

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。