在文本模式下叠加字符(pdfTeX)

在文本模式下叠加字符(pdfTeX)

我正在尝试通过将 Unicode 字符一个接一个地排列在一起来编写非 Unicode 字符,但我需要一个负空间,而文本模式下没有负空间。有没有办法得到类似的东西?

答案1

我按照 David Carlisle 的要求回答。关键是我倾向于不发明太多,我不知道\hspace是否可以接受否定论点,所以我尝试了,\!因为它是根据 定义的,所以在文本模式下不允许\thinmuskip。我想要创作的角色是 Biangbiangbiang面。我最终这样做了:

%Comandi comuni
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass[a4paper]{report}
\usepackage{fontspec,xltxtra,xunicode}
\usepackage{hyperref,mathptmx}
\newfontfamily{\Cht}{STKaiti}
\newcommand{\scb}{\scalebox}
\newcommand{\hsp}{\hspace}
\newcommand{\zhangmazhang}{\scb{1}[3.33333333333]{長}\hspace{-3pt}\scb{2.3}[3.5385]{馬}\hspace{-3pt}\scb{1}[3.33333333333]{長}}
\newcommand{\niuyanniu}{\scb{1}[2]{幺}\hsp{-4pt}\scb{1.3}[2.1667]{言}\hsp{-4pt}\scb{1}[2]{幺}}
\newcommand{\STKaitibiangbiang}{\scb{8}[10]{辶}\hspace{-57pt}\rotatebox[x=0.2cm,y=1cm]{-7}{\scb{5}[2]{\raisebox{5.3pt}{心}}}\hsp{-37pt}\scb{0.7}[0.7]{\raisebox{33pt}{\zhangmazhang}}\hsp{-28pt}\raisebox{43pt}{\scb{1.25}[1.25]{\niuyanniu}}\hsp{-39pt}\raisebox{26pt}{\scb{1}[4.5]{月}}\hsp{0.87cm}\raisebox{25pt}{\scb{1.2}[4.8]{刂}}\hsp{-1.5cm}\raisebox{61pt}{\scb{3.9}[1.5]{八}}\hsp{-1.7cm}\raisebox{58pt}{\scb{5.6}[4]{宀}}\hsp{0.21cm}}

\begin{document}
\fbox{\Cht{\scb{8}[10]{辶}\hspace{-57pt}\rotatebox[x=0.2cm,y=1cm]{-7}{\scb{5}[2]{\raisebox{5.3pt}{心}}}\hsp{-37pt}\scb{0.7}[0.7]{\raisebox{33pt}{\zhangmazhang}}\hsp{-28pt}\raisebox{43pt}{\scb{1.25}[1.25]{\niuyanniu}}\hsp{-39pt}\raisebox{26pt}{\scb{1}[4.5]{月}}\hsp{0.87cm}\raisebox{25pt}{\scb{1.2}[4.8]{刂}}\hsp{-1.5cm}\raisebox{61pt}{\scb{3.9}[1.5]{八}}\hsp{-1.7cm}\raisebox{58pt}{\scb{5.6}[4]{宀}}\hsp{0.21cm}}}吗\scb{0.1}[0.1]{\STKaitibiangbiang}\scb{0.4}[0.4]{\STKaitibiangbiang}\\[1cm]
Oh yeah! Fatto!
\end{document}

顺便说一句,是的,\Cht是 TeX 样式语法字体切换,所以\Cht{…}应该是{\Cht …}。我是在做完这件事很久之后才知道的。

相关内容