2

我创建了乳胶宏来排版吉他和弦图(使用图片环境)。现在我想让不同的图表在排版时出现在好看的网格中,如图所示:

图片 (在图片上:标记为“第一”的图表布局错误,当在线图表数量相等时标记为“第二”正确布局)

我正在使用 \hspace 在图表之间进行一些跳过,否则它们会彼此太靠近。正如您在第二种情况下看到的那样,当乳胶排列图片时,每行中的图片数量相同。但是,如果最后一行中的图片较少,它们就会“向右移动”。我不想要这个。

我猜是因为乳胶使第一行图表之间的空间更长一点,以使该行完全适合页面宽度。如何告诉乳胶不要调整 \hspace 创建的空间?或者还有其他方法吗?

我想我不能使用表格,因为我不知道一行可以容纳多少张图表...

这是代码的当前状态:

\newcommand{\spaceForChord}{1.7cm}

\newcommnad{\chordChart}[1]{%
  %calculate dimensions xdim and ydim according to settings
  \begin{picture}(xdim, ydim){%
    %draw the diagram inside defined area
  }%
  \hspace*{\spaceForChord}%
  \hspace*{-\xdim}%
}%

%end preambule and begin document
\begin{document}
First:\\*
\\*
\chordChart{...some arguments to change diagram look...}
\chordChart{...some arguments to change diagram look...}
\chordChart{...some arguments to change diagram look...}
\chordChart{...some arguments to change diagram look...}
\chordChart{...some arguments to change diagram look...}
%...above line is repeated 12 more times to produce result shown at the picture
\end{document}

谢谢你的帮助。

4

1 回答 1

1

一个很长的镜头,因为我不能轻易地重现你的情况:将flushleft环境包裹在你周围\chordCart会有任何帮助吗?

IE,

First:\\*
\begin{flushleft}
\chordChart{...some arguments to change diagram look...}
...
\end{flushleft}

Second:\\*

如果您的假设是正确的,并且 LaTeX 确实在尝试拉伸空格以对齐行,那么上面应该通过关闭右侧的对齐来解决您的问题。

于 2010-04-08T22:19:29.897 回答