Три столбца в большом документе и переименование в латекс - PullRequest
1 голос
/ 08 апреля 2009

Я только изучаю латекс, так что это может быть тривиально для некоторых из вас. Я прошел несколько уроков, но все они, кажется, охватывают одно и то же.

Я пишу большой отчет - все расчеты (и они должны быть аккуратными, потому что это часть документации). Он состоит из рамки вокруг страницы (поля 15 мм) и трех столбцов внутри нее: в левом столбце (ширина 3 см) указаны ссылки, откуда пришло уравнение (например, «ABS 3-2-7»), в середине это расчет, а справа - принятое значение (ширина 5 см). Это стандартный способ работы, поэтому у меня нет выбора по макету.

Теперь, я не понимаю, как бы я пошел в создании такого макета? Рамка со столбцами должна появляться на каждой странице. Как это сделать? Я никогда не видел такого документа, поэтому я не уверен, как облегчить создание.

И во-вторых, как мне переименовать вещи на английском языке в классах документов? Например, класс "article", у меня есть "References", и мне нужно иметь "Literatura". Есть ли способ переименовать его, не касаясь файла .cls?

Ответы [ 3 ]

2 голосов
/ 08 апреля 2009

Для вашей первой проблемы посмотрите на пакет longtable (доступен по адресу ctan.org , если он еще не установлен)

Проблема с использованием таблиц заключается в том, что она не будет работать так, как вы хотите на разных страницах.

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

Например, добавьте в преамбулу \ renewcommand \ refname {Literatura} класс статьи, чтобы выполнить то, что вы просили. Если я правильно помню, это bibname для книг.

1 голос
/ 08 апреля 2009

Дизайн стола в LaTeX не очень прост. Я бы использовал tabbing вместо tabular и рисовал линии вручную, чтобы все было просто. Недостатком является то, что вы не получаете никакого автоматического определения размера ячеек таблицы, но поскольку ваш формат фиксирован, я бы посчитал это хорошим вариантом (т. Е. Если текст переполняется, вы замечаете это и можете исправить это самостоятельно, Стол случайно не растягивается на полях). Если вы используете несколько таких таблиц в своем документе, попробуйте упаковать команды с \newenvironment.

\documentclass{article}
\usepackage[margin=15mm]{geometry}
\usepackage{amsmath}
\usepackage{calc}

\newlength{\tableheight}
\setlength{\tableheight}{20cm}  % how high to draw the lines of the table
\newlength{\rulethickness}
\setlength{\rulethickness}{1pt} % how thick lines to draw
\newcommand{\verticalline}{\smash{\rule[-\tableheight]{\rulethickness}{\tableheight}}}
\newlength{\myindent}
\setlength{\myindent}{3mm}      % how much to indent each column
\newlength{\leftcolumn}
\setlength{\leftcolumn}{3cm-\myindent}
\newlength{\midcolumn}
\setlength{\midcolumn}{\textwidth-3cm-5cm-\myindent-\rulethickness}
\newlength{\rightcolumn}
\setlength{\rightcolumn}{5cm-\myindent}

\begin{document}
\begin{tabbing}
  % first set the tab stops
  \hspace*{\myindent}\=\hspace{\leftcolumn}\=%
  \hspace{\myindent}\=\hspace{\midcolumn}\=%
  \hspace{\myindent}\=\hspace{\rightcolumn}\=\kill
  % then draw the lines
  \rule{\textwidth}{\rulethickness}\\[-\baselineskip]
  \smash{\rule[-\tableheight]{\textwidth}{\rulethickness}}\\[-\baselineskip]
  \verticalline\>\>\verticalline\>\>\verticalline\>\>\verticalline\\
  % Now start the table: indent the first column with \>
  \>ABS 3--2--7 
  % ... and each additional column with \>\>
  \>\> $\iint_{-\infty,-\infty}^{\infty,\infty} e^{-x^2-y^2}\, dx\,dy$ 
  \>\> 2.507 
  % End each line with \\, add e.g. [2pt] to get 2pt extra space if required
  \\[2pt]
  % here's another line:
  \>ABS 3--2--8 \>\> $\displaystyle\sum_{k=0}^n k^2$ \>\> $\frac12 n(n+1)$ \\
  % etc. Be careful not to overflow the table - there's no automatic check for that.
\end{tabbing}

\newpage % also remember to start a new page after the table

\end{document}

Чтобы изменить фиксированные имена, см. этот FAQ или, возможно, этот , если вы используете babel.

1 голос
/ 08 апреля 2009

В этом случае вы, вероятно, захотите использовать среду tabular для генерации трех столбцов (или в качестве примечаний к симону longtable, если ваш отчет работает более одной страницы). Что-то вроде:

\framebox{
  \centering
  \begin{tabular}{p{3cm}|p{\specialwidth}|p{5cm}}
  Ref 1-0-0 & 1.2345 & 1.2346 \\
  Ref 1-0-1 & 2.3456 & 2.3454 \\
  ...
  \end{tabular}
}

Вы заметите, что я использовал отформатированные столбцы абзаца (спецификаторы форматирования p{<length>}) и обернул вокруг него рамку с помощью \framebox.

Вы можете либо вычислить \specialwidth вручную, либо вычислить его:

\newlength{\specialwidth}
\setlength{\specialwidth}{\textwidth}
\addtolength{\specialwidth}{-10cm} % extra room for the seperators...

Я не могу помочь вам в вопросе интернационализации ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...