2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Запись определений...
Сообщение24.06.2010, 17:16 
Аватара пользователя
Здравствуйте, начал изучать ТеХ и возникло куча вопросов, вот один из них...
Нужно написать определения по типу сначала идет определение, а все последующие сроки имеют отступ равный длине определения, либо задан вручную... по мере изучения пока не нашел ответа, а долго застревать тоже не хочется.. заранее спасибо...

 
 
 
 Re: Запись определений...
Сообщение24.06.2010, 20:37 
Аватара пользователя
К этой же теме относится вопрос, как сделать подчеркивание углом. Когда Слово ОПР подчеркивается снизу и справа(напоминая вписывание в прямоугольник, где левая и нижняя стороны невидимы)

 
 
 
 Re: Запись определений...
Сообщение24.06.2010, 22:14 
Аватара пользователя
Что такое длина определения?
Попробуйте поиграться с \leftskip=xxx\em, где xxx = интересующая длина.

 
 
 
 Re: Запись определений...
Сообщение25.06.2010, 02:04 
Аватара пользователя
Под длиной определения понимается длинна определяемого термина...
Пример: Производная - предел отношения приращения функции к приращению ее аргумента при стремлении приращения аргумента к нулю. Здесь длиной определения будет длина слова "Производная"...
Конечно такие ухищрения можно было бы опустить, но именно благодаря им можно лучше разобраться в тонкостях...
За совет спасибо, \leftskip дает похожий результат, но отступ почему-то затрагивает определяемый термин(хотя он до указания отступа). Конечно изощряясь с \leftskip и \vskip удалось получить нужный результат и выглядит именно так, как нужно, но приходится расчитывать длину термина и следить за концом первой строки, чтобы сделать отступ... Неплохо, если бы был более простой способ...

 
 
 
 Re: Запись определений...
Сообщение25.06.2010, 05:42 
Аватара пользователя
Код:
\begin{itemize}
\item[Definition] --- text text text text text text text text text
  text text text text text text text text text text text text text.
\end{itemize}

 
 
 
 Re: Запись определений...
Сообщение25.06.2010, 18:21 
А как Вам такой вариант:
Код:
...
\newlength{\lendef}
\newenvironment{mydef}[1]{\settowidth{\lendef}{#1~---~}\addtolength{\lendef}{-\textwidth} #1~---~\begin{minipage}[t]{-\lendef}}{\end{minipage}}

\begin{document}
\begin{mydef}{Производная}
это предел отношения приращения функции к приращению ее аргумента при стремлении приращения аргумента к нулю.
\end{mydef}
\begin{mydef}{Неопределенный интеграл}
это множество всех первообразных данной функции. Ой, чёрт возьми, маленькое определение, поэтому попишем что-то ещё.
\end{mydef}
\end{document}
?

 
 
 
 Re: Запись определений...
Сообщение25.06.2010, 19:07 
Аватара пользователя
Delpiero в сообщении #335138 писал(а):
А как Вам такой вариант:
Код:
...
\newlength{\lendef}
\newenvironment{mydef}[1]{\settowidth{\lendef}{#1~---~}\addtolength{\lendef}{-\textwidth} #1~---~\begin{minipage}[t]{-\lendef}}{\end{minipage}}


Не очень, потому что (как я понимаю) он будет некорректно работать, когда определение разрывается между страницами. Я хотел как-то так:
Код:
\newlength{\lendef}
\newenvironment{mydef}[1]{\settowidth{\lendef}{#1~---~}\noindent\advance\leftskip\lendef \hskip-\lendef #1~---~}{}

но оно почему-то не работает. Когда тот же код вставляешь в тексте документа, не определяя никаких команд, работает, как надо. Чего-то тут я не знаю.

 
 
 
 Re: Запись определений...
Сообщение26.06.2010, 11:31 
С замечанием в принципе согласен, но Ваш вариант не нравится, так как название определения вылазит на левое поле.

 
 
 
 Re: Запись определений...
Сообщение26.06.2010, 11:43 
Аватара пользователя
Delpiero в сообщении #335321 писал(а):
С замечанием в принципе согласен, но Ваш вариант не нравится, так как название определения вылазит на левое поле.

Так и я об этом же. Почему-то в тексте такой трюк работает, а в виде окружения --- нет.

 
 
 
 Re: Запись определений...
Сообщение22.07.2010, 17:04 
Можно так:

Используется синтаксис LaTeX
\newcommand{\definition}[1]{%
\refstepcounter{definition}
\par\medskip\noindent
\vrule width0.2ex%
\rlap{\underline{\phantom{
                  \hskip1.4ex\bf Определение \thedefinition.}}}%
\hskip1ex%
\vtop{\advance\hsize by-1.2ex\noindent
      {\bf Определение \thedefinition.} \ #1\vskip0.7ex}}

(definition -- это имя счётчика; оно, между прочим, никак не привязано к определяемой макрокоманде "\definition"; можно, конечно, и без счётчиков). Тестовое обращение:

Используется синтаксис LaTeX
\definition{Вектор $\vec x$ называется {\it корневым вектором},
отвечающим собственному числу $\lambda$ оператора $A$,
если существует такое $k$, что ${(A-\lambda I)^k\vec x=\vec0}$.

 
 
 [ Сообщений: 10 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group