Есть ли в латексе неизмеримое пространство? Картинки в красивой сетке - PullRequest
2 голосов
/ 09 апреля 2010

Я создал латексный макрос для набора диаграмм гитарных аккордов (используя среду изображения). Теперь я хочу, чтобы диаграммы разных типов отображались в красивой сетке при наборе текста рядом друг с другом, как показано на рисунке:

Картинка . (на рисунке: «Первый» - неправильный макет диаграмм, «Второй» - правильный макет при равном количестве диаграмм в строке)

Я использую \ 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}

Спасибо за любую помощь.

1 Ответ

1 голос
/ 09 апреля 2010

В общем, поскольку я не могу легко воссоздать вашу ситуацию: поможет ли окружение flushleft вокруг вашего \chordCart?

Т.е..

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

Second:\\*

Если ваша гипотеза верна и LaTeX действительно пытается растянуть пробелы для выравнивания линий, то вышеприведенное должно решить вашу проблему, отключив выравнивание справа.

...