\documentclass{article}
\usepackage[T1,OT4]{fontenc}
\begin{document}
Text with \_.
\end{document}
PDF では正しい出力が得られます:Text with _.
しかし、それを選択してコピーすると次のようになります:Text with .
これは Adobe Reader、Foxit Reader、Sumatra PDF で発生するため、リーダーの問題ではないと思います。
どうすれば直せますか?
答え1
への変更
\usepackage[OT4,T1]{fontenc}
私が見る限り、エンコーディングは実際には必要ありません。次のドキュメントOT4
の記述によると、fontenc
OT4
クヌースは OT1 エンコーディングに「失われた L」(Ł) をタイプセットする手段を含めましたが、ポーランド語のテキストにも必要な発音区別符号であるオゴネクを省略しました。そのため、エンコーディングよりかなり前に
T1
、このエンコーディングを使用するフォントが登場しました。
だから簡単に言うと
\usepackage[T1]{fontenc}
答え2
\_
OT1 や OT4 のような「古い」フォントエンコーディングには( )のグリフがないので\textunderscore
、カーネルで定義されているデフォルトを使用します。これは小さなルールです。ただし、このデフォルトを変更して、代わりに T1 エンコーディングのグリフが使用されるようにすることができます。
\documentclass{article}
\usepackage[T1,OT4]{fontenc}
\DeclareTextSymbolDefault{\textunderscore}{T1}
\begin{document}
Text with \_.
\end{document}