如何移动文本中的每一行

如何移动文本中的每一行

在隐写术中,隐写是一种有趣的信息传递方式。每行要么凸起几个点,要么根本不凸起。如何导致后续文本行凸起约 4pt?应尽可能编写提升图,以便每次更改数据。

换线、换乘

示例图片

答案1

这会将第一个参数隐藏在第二个参数中,并仅在第一个参数中针对小写 ascii 进行优化(它将 ascii 代码偏移 m 的 ascii 代码,以便字母表的一半升高一行,而另一半降低一行。您可以用来\表示空格。

在此处输入图片描述

\documentclass{article}

\def\hide#1#2{%
\setbox1\vbox{}%
\gdef\txt{#1}%
\setbox0\vbox{\hsize5cm \raggedright
#2%
\par
\loop
\unpenalty
\skip0\lastskip\unskip\global\setbox1\vbox{\vskip\skip0\unvbox1}%
\unpenalty
\skip0\lastskip\unskip\global\setbox1\vbox{\vskip\skip0\unvbox1}%
\unpenalty
\setbox0\lastbox
\ifvoid0
\else
\global\setbox1\vbox{%
\dimen0\dp0
\count0=96
\expandafter\getnext\txt{}\relax
\dimen2\dimexpr\count0 sp - 109sp\relax
\kern10000\dimen2
\box0
\kern-10000\dimen2
\kern-\dimen0
\hrule
\kern\dimen0
\unvbox1}%
\repeat
}
\leavevmode\box1
}

\def\getnext#1#2\relax{%
\ifx\\#1\\%
\gdef\txt{}%
\else
\ifx\ #1%
\count0=95
\else
\count0=`#1
\fi
\gdef\txt{#2}%
\fi}




\begin{document}
\Large

\hide{hello}{
\def\a{One two three four five six seven eight nine ten. }
\def\b{\a Red yellow blue green. \a\a One two three. }
\b\b}
\hide{david}{
\def\a{One two three four five six seven eight nine ten. }
\def\b{\a Red yellow blue green. \a\a One two three. }
\b\b}



\end{document}

相关内容