编译时将乌克兰语“і”替换为拉丁语

编译时将乌克兰语“і”替换为拉丁语

使用pdflatexbabel在编译时将乌克兰字母і(U+0456)替换为拉丁字母i(U+0069)。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[ukrainian]{babel}

\begin{document}
  Привіт
\end{document}

PDF 文件中的结果:

Привiт

拉丁语在哪里i。外观上没有区别,但它会产生抄袭检查问题。我需要乌克兰语і保留在 PDF 中。

答案1

好吧,你可以将 i 映射到西里尔字母 і。但是如果你映射了所有字母,这意味着使用 T1 编码的文本中的 i 也会被复制为西里尔字母 i。在我看来,没有简单的解决办法,字体和编码是在 unicode 一致性和复制粘贴并不重要的时候创建的。

您应该使用像 lualatex 或 xelatex 这样的 unicode 引擎来获得真正的解决方案。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[ukrainian]{babel}
\input{glyphtounicode}
\pdfgentounicode=1
\pdfglyphtounicode{i}{0456}
\begin{document}
  Привіт
  
  \fontencoding{T1}\selectfont iii
\end{document}

相关内容