编码以便能够搜索 pdf

编码以便能够搜索 pdf

我正在用捷克语写一份文件。我想

  1. 能够完全搜索 pdf(目前我只能搜索非捷克字符的单词,但我也希望能够使用捷克字符进行搜索)。
  2. 能够从 pdf 中复制和粘贴。目前,当我复制文本并将其粘贴到记事本中时,“společnost”等单词被粘贴为“spolecˇnost”。

我的 MWE:

\documentclass[11pt,a4paper]{article}
\usepackage[czech]{babel}
\usepackage[X]{inputenc}
\usepackage[Y]{fontenc}
\begin{document}
Zvyšuje se nebezpečí, že skupina pomatených lidí na společnosti napáchá obrovské škody.
\end{document}

应该用什么来代替 X 和 Y?谢谢。

答案1

glyphtounicode 和 cmap
X 和 Y 可能不是问题。

参考第 7 页MinioPro-手册,为了使数字和连字可搜索,您需要启用glyphtounicode翻译并加载默认映射表:

\input{glyphtounicode}
\pdfgentounicode=1

glyphtounicode包括在我的MikTeX-发行版,但如果你的发行版中没有包含它,你可以在萨罗瓦

此解决方案适用于所有字体。

如果您使用计算机现代字体,您可以尝试添加:

\usepackage{lmodern}

我也尝试过cmap,但它仍然无法使特殊字形可搜索。此外,我尝试了 tex-gyre 字体thermes(类似于times

\usepackage{tgthermes}

这些字形无法搜索(但应该可以)。

我猜这是因为字体中没有定义字形,因此 Tex 通过组合其他两个字形来构造它们。我没有能力进一步帮助您,但也许 @egreg 可以:使用宪章字体从 PDF 中复制捷克字符

newtx 和 tgtermes
关于newtx,这个 MWE 在我的系统上编译,但捷克字符不可搜索:

\documentclass[final,oneside,a6paper,11pt,norsk,article]{memoir}
%\documentclass{standalone}
\usepackage{fixltx2e}
\usepackage{babel}
\usepackage[osf]{newtxtext}
\input{glyphtounicode}
\pdfgentounicode=1

\usepackage{lipsum}
\usepackage[utf8]{inputenx}
\usepackage[T1]{fontenc}

\begin{document}

Dette er en prøve på æøå AÅØ
Dette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØDette er en prøve på æøå AÅØ

vis-à-vis ñ ôö ä

1234567890

Zvyšuje se nebezpečí, že skupina pomatených lidí na společnosti napáchá obrovské škody.

\end{document}

您必须glyphtounicode用捷克字符来扩展表。

我现在没时间研究这个,但也许一些 tex-wizards 可能会有帮助。我相信它很简单,只需提供一些命令即可:

\pdfglyphtounicode{A}{0041}
\pdfglyphtounicode{AE}{00C6}
\pdfglyphtounicode{AEacute}{01FC}
\pdfglyphtounicode{AEmacron}{01E2}

其中第一个参数是字体的代码,第二个参数是 Unicode 代表。

在此处输入图片描述

答案2

X 无关紧要,使用允许您输入字符的任何编码,例如 utf8。

对于 Y,您需要 T1。您还应该使用 glyphtounicode(č 仅适用于它)。

\documentclass[11pt,a4paper]{article}
\usepackage[czech]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\input{glyphtounicode}
\pdfgentounicode=1
\begin{document}
Zvyšuje se nebezpečí, že skupina pomatených lidí na společnosti napáchá obrovské škody.
\end{document}

相关内容