標籤:

LaTeX把一個字元放在另一個上面, 但是字元寬度按照下面的字元來的效果怎麼做出來?

我想在某個字元上面自定義一個symbol. 這個symbol可以用圖片.

就像下圖裡面的Naive這樣. 如何做出來呢?

usepackage{stackengine}

ewcommand{
aive}[1]{stackon[1pt]{#1}{includegraphics[w=.8em]{naive.eps}}}

如果我用下面的代碼

Na
aive{i}ve

得到的結果是

那麼如何改變那個command, 使得得到下面slide裡面的樣子呢? 我現在只能傻傻的做

Nahspace{-3pt}
aive{i}hspace{-3pt}ve

但是應該有更好的方法.


@Chao Xu 可能是我這幾年做字體比較多,碰到這種想要在一個字元上疊加mark的工作,都會直接造一個字體來弄比較好。當然像題中有人用到的這種0寬度的盒子的做法是比較直觀有效的。我建議你拿fontforge造一個字元出來,也不麻煩,萬一又想加腰帶呢。


直接對上面的字元套個clap?

(第一反應是smash但是那個是把一個box的高度碾壓為0, 這個是把寬度變成0)

詳見 https://www.tug.org/TUGboat/tb22-4/tb72perlS.pdf


感謝匿名用戶. 我終於做好了這個naivemoha的LaTeX package. 用clap完全可以.

放到了github上, 並且附有一個簡單的example: chaoxu/naivemoha

當然我那裡面直接用了clap的定義, 而沒有定義clap污染你的command.

defclap#1{hbox to 0pt{hss#1hss}}

大家可以提Issue. 我是LaTeX裡面的排版功能的新手, 目前在提高自己的姿勢水平.


推薦閱讀:

LaTeX小寫花體字母?
如何提高LaTeX的編譯速度?
TeX 是個什麼樣的排版軟體?使用它的最好方法是什麼?
請問如圖的通欄公式是如何排版的呢?
xeCJK 通過文件名調用字體有問題?

TAG:LaTeX |