如何列出pdflatex创建的pdf文件中所有带有`AR PL KaitiM GB`字体的汉字?

如何列出pdflatex创建的pdf文件中所有带有`AR PL KaitiM GB`字体的汉字?

AR PL KaitiM GB列出chrome中所有测试过的汉字 。

vim 测试.html

<html>
<style type="text/css">
p{
    font-family:AR PL Mingti2L Big5;
</style>
<p>
测试显示中文繁體漢字简体汉字
</p>
</html>

然后用 chrome 打开它。

all characters displayed successfully in browser with AR PL Mingti2L Big5

每个字符都以字体形式显示在 chrome 中AR PL KaitiM GB

fc-list|grep "bsmi"
/usr/share/fonts/truetype/arphic-bsmi00lp/bsmi00lp.ttf: AR PL Mingti2L Big5,文鼎PL細上海宋:style=Regular

bsmi是 的字体AR PL Mingti2L Big5

使用 pdflatex 执行相同的任务。

vim test.tex
\documentclass{article} 
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{bsmi}测试显示中文繁體漢字简体汉字\end{CJK}
\end{document} 

使用 将 test.tex 更改为 test.pdf pdflatex test.tex
使用 pdf 查看器打开 test.pdf。

many Chinese characters can't be displayed i pdf

为什么有那么多汉字无法显示,如测试显简体汉

创建我预期的 pdf 文件。

1.在libreoffice writer中编辑
打开一个新的libreoffice writer,用字体输入所有汉字AR PL Mingti2L Big5

edit in libreoffice writer

2.export as pdf在 libreoffice 菜单中点击
使用 pdf 查看器打开它。
enter image description here

这是我在 pdf 文件中预期的效果,其中包含所有带字体的中文字符AR PL Mingti2L Big5
如何修复我的 test.tex 文件以显示所有带字体的中文字符AR PL Mingti2L Big5

又一次尝试失败。

vim test.tex
\documentclass{article}
\usepackage{fontspec}
\setmainfont{AR PL Mingti2L Big5}
\begin{document}
测试显示中文繁體漢字简体汉字
\end{document}

xelatex  test.tex
evince test.pdf

enter image description here

lualatex  test.tex
evince test.pdf

enter image description here

答案1

在我的系统上,我注意到 Emacs 缓冲区中的字形显示正常,M-x describe-char我发现 Emacs 正在使用Heiti SC字体,所以我尝试

\documentclass{article} 
\usepackage{fontspec}
\setmainfont{Heiti SC}
\begin{document}
测试显示中文繁體漢字简体汉字
\end{document}

并且xelatex可以工作。

enter image description here

另一方面,尝试使用第一个例子pdflatex + CJKutf8

\documentclass{article} 
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{bsmi}测试显示中文繁體漢字简体汉字\end{CJK}
\end{document}

我得到了 5 行这样的内容:

Missing character: There is no K in font bsmiu6d!

并且像您报告的那样,PDF 输出中缺少字形。


令人惊讶的是,尝试fontspeclualatex代替xelatex我得到了一个字体未找到错误

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
./testchinese2.tex:3: fontspec error: "font-not-found"
! 
! The font "HeitiSC" cannot be found.
! 
! See the fontspec documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  

xelatex发现这个 Mac OS X 系统范围的字体没有问题。


然后我注意到确实AR PL Mingti2L Big5带有 TeXLive(2018,预测试,我有部分安装,但包含 CJK 支持)并且我尝试了这个

\documentclass{article} 
\usepackage{fontspec}
\setmainfont{AR PL Mingti2L Big5}
\begin{document}
::测试显示中文繁體漢字简体汉字
\end{document}

结果为lualatex

enter image description here

结果为xelatex

enter image description here

我添加了:: 以更好地显示,以便xelatex在缺少字形时打印空白。出于某种原因,字形似乎从 中丢失AR PL Mingti2L Big5。这是lualatex运行日志:

Missing character: There is no 测 (U+6D4B) in font ARPLMingti2LBig5:mode=node;+
tlig;!
Missing character: There is no 试 (U+8BD5) in font ARPLMingti2LBig5:mode=node;+
tlig;!
Missing character: There is no 显 (U+663E) in font ARPLMingti2LBig5:mode=node;+
tlig;!
Missing character: There is no 简 (U+7B80) in font ARPLMingti2LBig5:mode=node;+
tlig;!
Missing character: There is no 汉 (U+6C49) in font ARPLMingti2LBig5:mode=node;+
tlig;!

答案2

你不能信任 libreoffice 等应用程序(和浏览器)。它们经常用其他东西替换缺失的字体或字形。

我安装了AR PL Mingti2L Big5并尝试在自由办公室中使用它来处理您的文本:

enter image description here

但是导出为 pdf 后,adobe reader 的选项对话框不会报告这种字体,而是报告另外两种字体:

enter image description here

与使用 lualatex 创建的 pdf 在高缩放比例下进行比较,可以看到字体不同:

enter image description here

相关内容