使用 pdflatex 插入单个 unicode 字符

使用 pdflatex 插入单个 unicode 字符

我想在我的 LaTex 文档中包含一个特殊字符:Ꝃ

(在布列塔尼语中是“kêr”的缩写,意为“地方”或“房子”,用于地点命名)

以下是它的技术规格,引用自 ubuntu 14.04 文档(法语):

U+A742 带对角线的拉丁文大写字母 K

性格的一般属性

自 Unicode 5.1 以来,Unicode 类别:大写字母

多种多样的表达方式

UTF-8 :0xEA 0x9D 0x82 UTF-16 :0xA742

UTF-8 和 C 八进制转换:\352\235\202 十进制实体 XML :Ꝃ

如果我直接复制/粘贴该字符,我会收到一条错误消息(! Package inputenc Error: Unicode char \u8:ê‚ not set up for use with LaTeX.)。我猜想需要做一些事情,或者编写一些特殊代码才能插入它。我只需要在一个非常长且已经很复杂的文档中插入一次,所以我正在寻找一个简单的解决方案,尽可能少使用新软件包或进行重大更改。我想知道为什么我应该将文档转换为 XeLatex 或 LuaLatex,对于这个单个字符,以及如果我这样做,它会对我的文档进行哪些更改。

在 inputenc (v1.1d 2008/03/30, p.3) 的文档中,我找到了该命令:

\DeclareUnicodeCharacter{code}{def}

所以我想我可以做一些类似的事情:

\DeclareUnicodeCharacter{A742}{…}

但我不知道“ def”位置应该是什么。我尝试了几次,但都没有成功。

或者,改变我的序言中的某些内容以获得更广泛的预加载字符列表,包括我需要的字符列表?

这是一个 M(not)WE,取自我的序言最开始的部分:

\documentclass[12pt,a4paper,titlepage,oneside]{book} % il faudra ajouter [final] à la fin

\usepackage[utf8]{inputenc}
\usepackage[ibycus,frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
%\DeclareUnicodeCharacter{A742}{???}
\usepackage{cjhebrew}

\begin{document}
k

\end{document}

注释:错误消息在第 13 行。在第 7 行,我已注释该命令,因为它不完整。我之所以使用ibycus&,cjhebrew是因为我正在研究的作者有时会将其与古希腊语或希伯来语中的某些单词进行比较。

我也尝试过一些与ucs包裹有关的事情,但是没有正常工作。

我读过几个问题(这里这里这里),但是我尝试过的解决方案却不适合。

谢谢你,

马洛

答案1

您可以尝试不同的条形图(这个来自斜线 L \L

在此处输入图片描述

\documentclass[12pt,a4paper,titlepage,oneside]{book} % il faudra ajouter [final] à la fin

\usepackage[utf8]{inputenc}
\usepackage[ibycus,frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\makeatletter
\DeclareTextCommandDefault{\KK}
   {K\lower.1em\llap{\fontencoding{OT1}\bfseries\@xxxii\kern.1em}}

\DeclareUnicodeCharacter{A742}{\KK}
\usepackage{cjhebrew}

\begin{document}
k

\end{document}

答案2

根据@David 的建议(感谢他)以及一些修改,这是我最终完成的:

\newcommand{\kbarre}{K\lower.85em\llap{{\LARGE \'{}}\kern-.1em}}

结果并不完美,但对于我来说已经足够了。

一些观察:

  1. 我不需要将它识别为 Unicode 字符,并且\DeclareUnicodeCharacter会产生一些错误消息,因此将它作为命令对我来说就足够了。

  2. 我写的尺寸是“正常”。如果有人想以其他尺寸使用这个字符,我猜需要用包\LARGE中的某个命令来替换它relsize

相关内容