我希望 Ubuntu 22.10 在Noto Naskh 阿拉伯字体而无衬线阿拉伯语文本Noto Sans 阿拉伯字体。
如何让 Ubuntu 安装一个默认的阿拉伯字体作为衬线字体,另一个作为无衬线字体?
我希望 Ubuntu 遵循一条规则,如果它看到文本的字体文件名包含 naskh 或 serif 等字词,它会以该特定字体显示所有文本?如果另一组字词的字体文件名包含 sans 或 sans-serif 等字词,那么 Ubuntu 会以默认的无衬线阿拉伯字体显示所有文本吗?
结果fc-match -a | head -10
:
NotoSansArabicUI-Regular.ttf: "Noto Sans Arabic UI" "Regular"
NotoSans-Regular.ttf: "Noto Sans" "Regular"
NotoSans-Bold.ttf: "Noto Sans" "Bold"
NotoSans-Italic.ttf: "Noto Sans" "Italic"
NotoSans-BoldItalic.ttf: "Noto Sans" "Bold Italic"
NotoSansArabicUI-Bold.ttf: "Noto Sans Arabic UI" "Bold"
DejaVuSans.ttf: "DejaVu Sans" "Book"
DejaVuSans-Bold.ttf: "DejaVu Sans" "Bold"
NimbusSans-Regular.otf: "Nimbus Sans" "Regular"
NimbusSans-Regular.pfb: "Nimbus Sans" "Regular"
locale
:
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=ar_EG.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
答案1
Ubuntu 的字体配置就是为此准备的。
首先,您需要安装这些软件包:
sudo apt install fonts-noto-core fonts-noto-ui-core
然后有两种方法可以实现所需的行为:
通过安装阿拉伯语语言支持并选择阿拉伯语作为显示语言。
如果您不想将阿拉伯语作为显示语言,您可以生成一些阿拉伯语语言环境并将其分配给
LC_CTYPE
环境变量:sudo locale-gen ar_EG.UTF-8 sudo update-locale LC_CTYPE=ar_EG.UTF-8
(最后重启)