这可能是 PDF 问题而不是 LaTeX 问题,但由于它涉及 pdfLaTeX 输出,我希望我不会受到太大的打击。
我正在创建参考书目,不可避免地有些作者的名字带有重音符号或其他外来字符。我希望能够在 PDF 文件中搜索这些作者,但有些字符无法识别。例如,我创建了一个简单的 .tex 文件,如下所示:
\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
Some foreign characters: öøäéüæåñ
\end{document}
我可以在生成的 PDF 文件中成功搜索 ö、ä、é、ü、å 和 ñ,无论是使用这些特定字符还是不带重音符号的 o、a、e、u 或 n。但是,无论我从其他程序复制并粘贴 ø 或 æ 字符到搜索框中,还是使用Alt+155或Alt+ ,PDF 文件都找不到145它们。问题在于,有些期刊使用简单的“o”表示 ø 或“ae”表示 æ,因此我希望使用 ø 或 o 搜索 ø 时获得“匹配结果”,同样,使用 æ 或 ae 搜索 æ 时获得匹配结果。这一切是否可能实现,还是我太聪明了?
答案1
你能试一下吗:
\usepackage[T1]{fontenc}
完整测试文档:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\begin{document}
Some foreign characters: öøäéüæåñ
\end{document}
答案2
尽管我无法给出可行的解决方案,但我想解释问题根源所在。
就像 Crissov 在他的评论中推测的那样,这与您使用的阅读器应用程序有很大关系。就我而言奥克拉尔甚至找不到öaéuåñ
里面单词。例如,我使用了:
\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{STIXGeneral}
\XeTeXinputnormalization=1 %or 2
\begin{document}
Töst Tøst Täst Tést Tüst Tæst Tåst Testeñ
\end{document}
使用时\XeTeXinputnormalization=1
,我根本找不到特殊字符,而使用 时,我搜索的是常规字符。如果我设置\XeTeXinputnormalization=2
,至少我会To
在 中找到。但我仍然在 中Töst
找不到 和。Tost
To
Tøst
这种行为的原因是奥克拉尔正在进行相当精确的比较,更重要的是,字符之间存在很大差异ö
(ø
这导致了您的问题):
ö
(U+00F6) 分解为一个基本字符o
(U+006F) 和一个与之关联的重音符号̈
(U+0308)。虽然您可以编写o̷
(U+006F U+0337),并且它通常会显示为ø
,但它与 (U+00F8) 无关ø
,并且在 unicode 范式之间转换时不会转换它。æ
它与 相同ø
。您提到的所有其他字符都有关联的分解。(请参阅unicode字符分解映射以供参考。)
因此,您的阅读器应用程序似乎做了明智的事情,不仅考虑实际字符,还考虑其分解的基本字符。对于其他的等等ø
,æ
对它的期望实在是太高了。
您可能可以将所有内容转换ø
为图像,并在其后面放置一个不可见的文字o
,就像使用 OCR 对扫描的 PDF 所做的那样。但是,除了这是一个丑陋的解决方案之外,如果您输入实际的文字,您将无法找到该词ø
...