为什么第三列向右移动?按图片宽度排列的列

为什么第三列向右移动?按图片宽度排列的列

中间一列由 \picwidth 定义。所有其他列应具有相同或不同的大小。为什么第三列向右移动?

\parindent=0pt
    Dies ist ein Beispiel. \vskip\baselineskip
    \hrule
    \vskip\baselineskip
    \def\text {ein Beispiel. Dies ist ein Beispiel. Ein Text, wie ihn jeder schreiben kann, aber kein Blindtext, und auch kein Text, der immer wieder herein kopiert wird. }
    \raggedright 
    \input miniltx.tex
    \input graphicx.tex
    \newdimen\picheight 
    \newdimen\picwidth 
    \newdimen\beforepicwidth 
    \newdimen\afterpicwidth 
    \newdimen\columnsep
    \columnsep=14pt
    \def\centerpic[#1,#2,#3,#4,#5]{
    \def\overpic{\vtop{\hsize\picwidth #1\vfill}}
    \def\beforepic{\vtop{\hsize\beforepicwidth #2 \vfill}\hskip\columnsep}
    \def\pic{\vtop{\overpic \vskip\baselineskip \includegraphics[width=\picwidth,keepaspectratio,]{#3}\vskip\baselineskip\underpic}\hskip\columnsep}
    \def\afterpic{\hskip-2\picwidth\vtop{\hsize\afterpicwidth #4}}
    \def\underpic{\vtop{\hsize\picwidth #5\vfill}\hskip\columnsep}
    \vtop{%
    \picheight=16pt %height of picture not needed with aspectratio%
    \picwidth=120pt %width of picture
    \beforepicwidth=\picwidth%
    \afterpicwidth=\picwidth%
    \vskip0.1\baselineskip%
    \hbox{%
    \beforepic%
    \pic%
    \afterpic%
    }}\vskip\baselineskip}%
    \centerpic[\text,\text,example-image,\text,\text]%
    \vskip\baselineskip
    \hrule
    \vskip\baselineskip
    Dies ist ein Beispiel.
    \bye

在此处输入图片描述

答案1

在此处输入图片描述

您正在 vboxes 中开始段落,因此它们是换行符\hsize

不相关,但是你%在不需要它们的地方有线路,而在它们所在的位置没有线路。

\parindent=0pt
    Dies ist ein Beispiel. \vskip\baselineskip
    \hrule
    \vskip\baselineskip
    \def\text {ein Beispiel. Dies ist ein Beispiel. Ein Text, wie ihn jeder schreiben kann, aber kein Blindtext, und auch kein Text, der immer wieder herein kopiert wird. }
    \raggedright 
    \input miniltx.tex
    \input graphicx.tex
    \newdimen\picheight 
    \newdimen\picwidth 
    \newdimen\beforepicwidth 
    \newdimen\afterpicwidth 
    \newdimen\columnsep
    \columnsep=14pt
    \def\centerpic[#1,#2,#3,#4,#5]{%
    \def\overpic{\vtop{\hsize\picwidth #1\vfill}}%
    \def\beforepic{\vtop{\hsize\beforepicwidth #2 \vfill}\hskip\columnsep}%
    \def\pic{\vtop{\overpic \vskip\baselineskip \hbox{\includegraphics[width=\picwidth,keepaspectratio,]{#3}}\vskip\baselineskip\underpic}\hskip\columnsep}%
    \def\afterpic{\vtop{\hsize\afterpicwidth #4}}%
    \def\underpic{\vtop{\hsize\picwidth #5\vfill}}%
    \vtop{%
    \picheight=16pt %height of picture not needed with aspectratio
    \picwidth=120pt %width of picture
    \beforepicwidth=\picwidth
    \afterpicwidth=\picwidth
    \vskip0.1\baselineskip
    \hbox{%
    \beforepic
    \pic
    \afterpic
    }}\vskip\baselineskip}%
    \centerpic[\text,\text,example-image,1\text,2\text]%
    \vskip\baselineskip
    \hrule
    \vskip\baselineskip
    Dies ist ein Beispiel.
    \bye

相关内容