Ворожцов Артем, Как писать на ТеХ'е?
[Как писать на ТеХе]  [FAQ]  [Все про ТеХ]  [Язык знаний]  [Word vs TeX] [Коротко о KML]

Как писать на е

СОДЕРЖАНИЕ

Что такое ?

TeX — это система верстки текстов, в особенности научных статей. Скажем сразу, что это очень хорошая, серьезная и правильная замена MSWord, когда речь идет не об одной страничке, а о создании учебного пособия, книги, научной статьи. Где халтура не пройдет.

Нам придется сразу признаться, что TeX не текстовый редактор. Это скорее язык программирования. Но вы не огорчайтесь. Это простой язык, если вы не хотите наворотов, то достаточно знать набор из, скажем, 23 команд (правил) или даже 10.

ТеХ может все. Примите это как должное. Если очень захочется, командами TeXа можно нарисовать цветок в вазе, или вот что:(см. справа). ТеХ по мощи эквивалентен языку программирования — на нем можно написать интерпретатор языка Бейсик. Эмблема ТеХа и фрагмент текста в верхнем правом углу этого документа были созданы командами TeX'а. Но главная прелесть ТеХ'а не в том, что он всё может, а в том, что он сам красив и может все делать красиво и просто. Вот так то...

Как писать на е?

Курс будет из трёх примеров:

Пример 1 — sam0.tex

Документ для Plain TЕX:
   Hello!
   \end
Документ для LaTeX2e:
  \documentclass[12pt]{article}
  \usepackage[russian]{babel}
 
  \begin{document}
  Привет ДРУГ! А знаешь ли ты,
  что
  $$\int_{0}^{+\infty} e{-x^2}
   =\frac{\sqrt{\pi}}{2}?$$
  Пока.
  \end{document}

Результат для второго почти очевиден:

Plan TeX'ом мы заниматься не будем. Ориентируемся сразу MiKTeX (подробности о софте и примочках, где взять и как установить смотри внизу), Суть в том, что Plan TeX — это как бы TurboC-v1.0, а MiKTeX — оболочка типа Visual C/C++. Во-первых, это разные языки (также как и С++ отличается от С), во-вторых, MiKTeX содержит в себе много packages (пакетов), которые можно подключать и использовать функции ими предоставляемыми. Например, \usepackage{amscd} — пакет для рисования диаграмм, \usepackage{graphicx} — пакет позволяющий включать картинки, \usepackage{amsmath}, \usepackage{amssymb}, \usepackage{latexsym} — пакеты, предоставляющие много математических символов и команд, для записи математических формул. Далее,

\usepackage[russian]{babel} — команда, которая подключает к вашему документу пакет babel с опцией russian. После этого LaTeX2e знает русский язык — умеет писать по-русски и знает правила переносов. Кстати, для каждого слова вы можете сами указать желаемые места переноса слова: мор\-ти\-ровка или мортировка\-. В последнем случае он вообще не будет делать переносов. Вообще, LaTeX умный, и обычно догадывается как правильно переносить слова. Иногда ошибается, и его надо поправлять, и кроме того, иногда нужно запрещать переносы, это делается командой \hyphenpenalty=10000.

ТеX-овский файл — это обычный текстовый файл, который компилится, например, программой latex.exe, так что в результате получается то, что можно уже печатать.

Кусочки текста окруженные $$ ... $$ являются "выключенными формулами", это формулы, исключенные из текста, центрированные в отдельной строке. Формулы, которые прямо в тексте, окружаются одиночными $: $ ... $.

TeX оперирует с блоками, которые выделяются фигурными скобками: { {.{..}}.{.} }.

\frac{\sqrt{\pi}}{2} -- это команда делающая дробь с числителем \sqrt{\pi} и знаменателем 2

То, что начинается с бэкслэш, есть команда. Чтобы нарисовать бэкслэш, нужно набрать \backslash.

Для набора верних и нижних индексов используются соответственно подчеркивание _ и крышечка ^.

Команда \int — рисует интегралл. Если написать \int\limits_{0}^{+\infty}, то пределы получаться прямо снизу и сверху. А в примере они сдвинуты вправа и прижаты к знаку интеграла из соображений экономии места.

"Привет ДРУГ!" сдвинуто чуть вправо, потому что это начало обзаца (paragraph indent). "Пока." не сдвинуто вправо, потому что это не начало нового абзаца. Начало абзаца в TeX'е делается пустой строчкой или командой \par.

Paragrath Indent(смещение первой строчки абзаца) можно отменить командой \noindent. Разрыв строки (перенос на новую строку без окончания абзаца) делается командой \\.

Следующий пример посложнее. Прежде, чем углубляться в его глубины, посмотрите результат: [PS.ZIP]  [PDF.ZIP] [PDF]. Он смотрится GSView3.4(PS и PDF) или AcrobatReader (PDF). Где взять софт рассказано в последней части.

Пример 2 — sam1.tex

% ФАЙЛ   sam1.tex
% 31 декабря 2002. Компилился в системе MiKTeX v2.1 

\documentclass[12pt]{article}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{latexsym}

\newcommand{\one}{\mathbb{I}}
\renewcommand{\vec}[1]{\ensuremath\overrightarrow{#1}}
\newtheorem{theorem}{Теорема}[section]
\newtheorem{task}{Задача}[section]

\begin{document}
\title{Фигня и её приложения}
\author{Артем Ворожцов}
\date{31 июля 3001}
\maketitle
%Это аннотация
%
\begin{abstract}
Это аннотация.  Здесь все вкратце. Фигня фигне рознь,
и со всякой  фигнёй  можно по разному глумимся. Здесь
показано как можно глумится над фигнёй, вводя риманову
метрику  на  многообразии  фиговин,  согласованную  с
аффинной и экспоненциальной связностями.
\end{abstract}
\tableofcontents
\section{Введение}
Это текст о том, что все фигня\footnote{Фигню ещё
в некоторых работах называют по другому, здесь мы не
будем прибегать к таким обозначениям, потому что
это слишком грубо}, но в каждой фигне есть польза.
Этому уделено внимание в части \ref{sec:main}.
Данные исследования отчасти исходят из идей,
описанных М.~Онстером в его крутой
работе~\cite[на~странице 12345]{rulez}. Главный
результат представлен в виде формулы \ref{eq:main}
на странице \pageref{eq:main} где все круто
обобщено на поле $\Re$.

\section{Главная часть}
\label{sec:main} Это главная часть.  Начнём с начала
(часть~\ref{sec:setup}), то есть с азов, которые
более подробно описаны в работе~\cite{azbuka}, а
потом перейдём к изучению алгебраических
инвариантов (часть~\ref{sec:inv}).

\subsection{Постановка задачи о фигне}
\label{sec:setup} Дано гладкое многообразие фиговин.
 Надо ввести каноническую метрику, относительно которой
аффинная связность дуальна экспоненциальной.

\subsection{Монотонные метрики на многообразии фигней}
\label{sec:inv}

Рассмотрим информационную метрику для 
${\cal D}\approx{\mathbb{R}^n}\times{}^{U(n)}/_{T^n}$.
Плотность   $\rho\in{\cal D}$ можно диагонализовать
унитарным преобразованием $u$:

\begin{equation}
\rho=u\mu^2 u^*,\qquad\mu=
diag(\mu_1,\dots,\mu_n),\quad\mu_i\in{\Bbb R}_+
\label{eq:rho}
\end{equation}
и мы получаем $d\rho=2u\,\mu d\mu
u^*+u,[u^*du,\mu^2]\,u^*$. Обратная задача разбивается на 
$$
\frac{1}{{\bf L}_\rho+{\bf R}_\rho}\,(d\rho)=u\,
\left(\mu^{-1} d\mu+ \frac{1}{{\bf L}_{\mu^2}+
{\bf R}_{\mu^2}}([u^*du,\mu^2])\right)u^*
$$
и мы получаем выражение для метрики
\begin{theorem}
\label{th:metric}
Итак, мы доказали, что
\begin{equation}
\label{eq:main}
g_{\rho}= Tr d\mu d\mu+ \frac{1}{2}
Tr[\,u^*du,\mu^2\,] \frac{1}{{\bf L}_\mu^2+{\bf
R}_\mu^2}\,([\,u^*du,\mu^2\,])\,.
\end{equation}
\end{theorem}

\begin{figure}[!h]
\hfil
\includegraphics[width=0.4\textwidth]{V0044.eps}
\hfil
\includegraphics[width=0.4\textwidth]{VGR44.eps}
\hfil

\caption{
Все фиговины как известно занумерованы
натуральными числами. Здесь показаны график
характеристики группы монодромии фиговины под
номером 44 и её спектр (корни на комплексной
плоскости)}
\label{fig:figa44}
\end{figure}

 Объединение Грасманианов в $\mathbb{C}^{N}$ можно
 интерпретировать как $\{S\in \mathop{U}(N):S^{2}=\one \}$.
Назовем $S\in
\mathop{Harm}(\mathbb{S}^{2},\mathop{U}(N))$ 
{\em решением Грасманиана} если существует
$Q\in \mathop{U}(N)$ такая, что $(QS)^{2}=\one $.
Пусть $E_{\lambda }$ обобщенное решение для 
$S$ и положим  $E_{\lambda }(\infty )$ сопряженным к 
$\begin{pmatrix}\one &\\&-\lambda
\one \end{pmatrix} $.
\begin{theorem}[Uhlenbeck,1995]
\label{th:uhlen}
Верно что $\widetilde
{E}_{\lambda }=E_{-\lambda }E_{1}^{-1}$ есть обобщенное 
решение для $S^{-1}$.
\end{theorem}
Так вот. Вот мы и разобрали две теоремы. А теперь
сами докажите что-нибудь. Используя эти теоремы
докажите, что
\begin{task}
Фигня все это.
\end{task}
А также, используя рисунок \ref{fig:figa44} и
формулу \ref{eq:main} из теоремы \ref{th:metric},
комбинируя её с результатом \ref{eq:rho} на
странице \pageref{eq:rho}, и применяя метод
Галбицы (см.~\cite[стр. $N^2$]{rulez}) подставляя
$\rho$ в $\cal G$, и выражая все через инвариант
Лоха~\cite{azbuka},

\begin{task}
Докажите, что в огороде бузина, а в Киеве —- дядька.
\end{task}

\section{Выводы}
Всякой фигне найдётся применение.

И напоследок теоремка!
\begin{theorem}
Гомоморфный образ группы изоморфен фактор группе
по ядру гомоморфизма.
\end{theorem}

 %Здесь начинается библиография

\begin{thebibliography}{99}

\bibitem{azbuka}%
 С.\,Б.\,Лохов, \textit{О Фигне для чайников.} —
М.:Высш.шк., 1993.

\bibitem{rulez}%
M. Онстер, \textit{Об одном применении фигни в
квазинильпотентных алгебрах.} МK НМУ. 2001.

\end{thebibliography}
\end{document}

Итак, начнем по порядку. Обязательно взгляните на результат — [PS.ZIP]  [PDF.ZIP] [PDF], а то будет не понятно. TeX файл вместе с картинками (источники) возьмите здесь [sam1.src.zip]. Это три файла. Один — текстовый файл sam1.tex, представляющий собой то, что вы видите выше, два других — картинки в формате EPS. Подробнее о формате картинок в следующей главе. Если эти файлы расположить в одной директории, открыть TeX файл в специальном текстовом редакторе WinEdt, то после нажатия на две кнопки вы получите то, что есть результат — файл в формате PS, то бишь Post Script File. Этот файл для печати, который можно просмотреть и распечатать с помощью программы GSView. С помощью этой же программы (или Acrobat Distiller'а) его можно экспортировать в формат PDF.

Итак, один текстовый файл на языке LaTeX2e плюс готовые картинки плюс два нажатия на кнопки (две команды) и все. Первое нажатие — компиляция в DVI файл (командная строка: latex.exe sam1.tex) — получаем файл sam1.dvi, второе нажатие — включение шрифтов и картинок, чтобы файл стал самодостаточным (dvips sam1.dvi) — получаем файл sam1.ps. В прцессе редактирования можно и лучше обходится одним нажатием и просматривать сразу DVI файл с помощью программы YAP, которая поставляется вместе с MiKTeX.

Теперь относительно кода. Первые 7 строчек есть объявление стиля документа — article с опцией 12pt, которая указывает размер основного шрифта, — и подключение шести пакетов. Подключать inputenc нужно лишь тогда, когда у вас нестандартная кодировка. У нас кодировка windows-1251, в Linixо'вых LaTeX'ах обычно используется koi8-r.

Дальше мы придумываем новую команду \one. В данном случае она элементарна и является просто кличкой (alias) для красивого символа I. И еще определяем команду \vec. Эта командой мы будем рисовать векторы. Она имеет один аргумент, который соответствует #1. Например вектор $\vec{AB}$ Кроме того эта команда уже была определена (я это знаю точно), и определена она была не так как нам хотелось (там тоже рисовалась стрелочка, но маленькая). В связи с этим пишется \renewcommand. Если приставку убрать, то LaTeX будет ругаться при компиляции — мол определяете то, что уже определено — нехорошо.

Потом мы говорим ЧТО, КТО и КОГДА (неважно в каком порядке) и просим все это нарисовать — команда \maketitle. Эта же команда рисует аннотацию. Аннотация помещается в окружение abstract. То есть обрамляется с краёв \begin{abstract} ... \end{abstract}. Сам текст документа, как вы уже наверное увидели, помещается в окружение document. То, что перед ним, называется заголовком документа. Есть еще окружения equation, itemize, table, tabular, figure, array. Внутри окружения equation включается режим набора формул. Этот же режим можно включить обрамив нужный кусочек текста знаками доллара: $\sqrt{x^2+1}$ даст . Но в первом случае формула будет записана в новой строчке и центрирована, а во втором непосредственно в тексте. Кроме того, окружение equation автоматически нумерует формулу (пишет слева или справа её номер), и на неё можно ссылаться. Делается это так: внутри окружения equation пишется команда \label{teoremapifagora}, а потом в любом месте текста, где вы напишите команду \ref{teoremapifagora}. То же самое можно осуществить и с окружениями table, figure и еще окружения типа теорем, задач, лемм, следствий и так далее которые ВЫ ПРИДУМЫВАЕТЕ САМИ. В нашем примере это делается в следующих двух строчках с помощью \newtheorem. Это команда не для записи новой теоремы, а для создания окружения типа теоремы. Команда \newtheorem{task}{Задача}[section] создает окружение с именем task. Текст, помещенный в это окружение будет выделен стилем шрифта, кроме того он автоматически будет начинаться со слова Задача, после чего будет ставиться номер задачи (вычисляемый и рисуемый TeX'ом самостоятельно), и эта нумерация будет начинаться заново с каждой новой секции документа типа section. Бывают такие секции: part, chapter, section, subsection, subsubsection и subsubsubsection в порядке иерархии. Кроме того, есть еще такие структурные составляющие — библиография (окружение \begin{thebibliography}{99} ... \end{thebibliography}) и Таблица содержания.

Команда \tableofcontents после второго запуска (когда она изучет весь документ и запишет эти знания в файл sam1.toc) нарисует содержание вашего документа. Результат такой:

Да, кстати, есть более низко уровневая команда для создания окружения — \newenviroment. Ей вы можете определить все что угодо, придумать например, мелкошрифтовые комментарии справа от которых картинка с учёным в колпаке. Стиль их оформления вы можете определить командой \newenviroment в начале документа, а потом одним махом менять.

Потом как-нибудь докончу разъяснение этого примера... А пока перейдем к третьему примеру -- последнему.

Пример 3 — sam1.tex

% ФАЙЛ   main.tex -- главный файл примера sam2
% 31 декабря 2002. Компилился в системе MiKTeX v2.1 

\documentclass[12pt]{article}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{latexsym}
\usepackage{psfrag}
\input FTK.tex

\begin{document}
\initfloatingfigs

\renewcommand{\chaptername}{Семинар}

\title{Дополнительные семинары}
\tableofcontents

\input mmi/mmi.tex
\input dynamics/static.tex

\end{document}


Как вы видите сам он маленький, но включает в себя три файла (команда \input). Вот их содержание:

[FTK.tex]  [mmi.tex]  [static.tex] 

Но вы лучше скачайте ВСЕ ИСТОЧНИКИ вместе с картинкми откомпилите их и посмотрите результат. Вот он -- [PS.ZIP] или [PDF.ZIP]

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

Работники ФизТеХ Колледжа могут присылайте мне свои вопросы, я на них буду отвечать на страничке FAQ.

Как рисовать?

Если коротко и по-существу, то рисовать нужно в векторном формате, например, EPS. TeX поддерживает любые форматы, но правильнее использовать векторную графику.

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

Векторный формат номер один — Encapsulated PostScript.

Как сохранять графики функций

Origin 6.0 sr1 File/Export Page ->Encapsulated PostScript

Mathematica Edit/Selection/Save As->EPS

Векторные графические редакторы

Macromedia Free Hand File/Export..->Photoshop 4/5 RGB EPS

Adobe Illustrator File/Export..->EPS Еще есть Corel Xara.

Под Linux'ом самые замечательные векторные графические редакторы — XFig и TGif. С ними Linuxоиды сами разберутся.

Наиболее типичные команды для включения графики:

.
  \begin{figure}
  \centering\includegraphics[scale=0.6]{fig12.eps}
  \caption{Это распределение ученых по
  их далекости от жизни}
  \label{fig:far}
  \end{figure}
 
  .
  .
  .
 
  \begin{figure}
  \includegraphics[width=0.45\textwidth]{fig12.eps}
  \includegraphics[width=0.45\textwidth]{fig12.eps}
  \caption{Это зависимости слонов от котов (а),
  и котов от слонов(б)}
  \label{fig:slonokot}
  \end{figure}
 
  .
  .
 
  \begin{figure}
  \includegraphics[width=0.25\textwidth]{three.eps}
  \hfill
  \includegraphics[width=0.65\textwidth]{twoparal.eps}
  \parbox{0.34\textwidth}
  {\caption{Cилы $F_A$ и $F_B$ могут
        быть заменены одной силой $F_C$}
  \label{fig:three}}
  \hfill
  \parbox{0.64\textwidth}
  {\caption{Как из двух параллельных сделать
      две непараллельные}
  \label{fig:twoparal}}
  \end{figure}
 

Я осмелюсь сказать, что лучше ограничится одним форматом — EPS. Если у вас есть растровое изображение, которое нет смысла делать векторным, то импортируйте его в Free Hand и экспортируйте как EPS. EPS — универсальный формат, он может содержать в себе и растровые кусочки. Вот пример такого EPS.

В Free Hand можно создавать отдельные обекты --- текстовые поля, линий стрелочки, шарики, осуществлять заливку текстурой ограниченных кусочков и так далее. А потом двигать их, деформировать, изменять стиль и т.д. Первое, что надо освоить, — это панель свойств (Properties), которую вы можете увидеть, выбрав опцию в меню после нажатия правой кнопкой мышки.

Как делать надписи?

Надписи под рисунками делаются с помощью команды \caption. Бывают ещё надписи внутри самих рисунков.

Для них очень рекомендую использовать пакет psfrag. Суть его в том, что вы не делайте надписи в самих рисунках (EPS файлах), а лишь условно обозначаете их значками. А потом, непосредствено при вставке в TeX файл осуществляете замену значков-обозначений на содержание. Посмотрите на картинки.

Картинка слева --- это то что вы нарисовали в Mathematica или FreeHand. Картинка справа --- это то что будет в конечном PS-файле, который пойдёт на принтер. А ниже то, что надо написать в TeX файле чтобы это получить.
.
  \begin{figure}
  \psfrag{a}{$\alpha$}
  \psfrag{b}{$\betta$}
  \psfrag{int}%
    {$$\int_\alpha^\beta x^2=\frac{\beta^3-\alpha^3}{3}$$}
  \includegraphics[width=100pt]{parab.eps}
  \end{figure}
 

Зачем это нужно?

Во-первых, чтобы у вас не было ограничений в надписях. В графических редакторах, обычно, мало возможностей для вставки текстовых вещей — формулу в них нарисовать проблема. PSFRAG даёт вам возможность вставлять в картинки всё, что вы можете писать с помощью TeXа. То есть, всё что угодно.

Кроме того, при использовании PSFRAG у вас ТЕКСТ В КАРТИНКАХ ТОГО ЖЕ СТИЛЯ, ЧТО И В ОСНОВНОМ ТЕКСТЕ.

Ради Бога, не стесняйтесь, учитесь по хелпу. В Free Hand есть хорошее описание: Help/FreeHand Help .../ Tolls/...

На прощание

MiKTeX v2.1

Берется, например, с компа \\FFKE-GW Вот места его обитания MiKTeXа:

 194.85.81.215 \\AMAZING\INSTALL\
 194.85.81.155 \\CYCLON\DISTR\
 194.85.82.251 \\FUBAR\DISTR$\
 194.85.82.65 \\FFKE-GW\ARCHIVES\win32\officetools\!tex\miktex\
 194.85.82.117 \\OBVIOUS\PUBLIC\distrib\!tex\miktex\
 

Ghost Script Viewer — просмотрщик конечного результата — Post Script файла

\\GRECK\DISTR\_TeX Related\GhostScrip\gsv27550.exe — запускаете, все само устанавливается в указанную вами директорию. Например c:\Program Files\gs\gsview. Кто хочет последнюю версию может установить сначала Aladdin GhostScript v6.50, а затем GSView v3.4 и еще кракнуть его. Все что нужно, лежит в том же месте, а также есть на ffke-gw, dgap-gw и др.

После установки сразу всем рекомендую сделать Media/DisplaySettings-> Text Alpha =4 & Graphics Alpha=4. И затем — Options/Save Settings Now.

GSView умеет смотреть и PDF и конвертить в PDF. Ещё PDF (и только PDF) умеет смотреть Acrobat Reader.

WinEdt — удобный текстовый редактор для работы с TeX файлами

\\GRECK\DISTR\_TeX Related\WinEdt\WidEdt1.41.zip — рапаковывете, запускаете winedt.exe. Заходите в Options/MenuSetup/Utilities, выбираете GSView и прописывете definition — правильный путь к GSView

Редактор формул

Если вы сердцем любите Microsoft Equation, то знайте, что с переходом на LaTeX вы по-прежнему сможете им пользоваться. Прога TeXaide —

   \\GRECK\\DISTR\_TeX Related\TeXaide
   
— хороший WYSIWYG редактор a la MS Equation 3.0

Конвертатор из Word в TeX!

Есть такой, ВОТ ОН:Word2TeX работает просто, и качество не плохое. Точнее так: если документ Word криворуко состряпан, то и результат будет такой же. Качество само собой ниоткуда появится не может. Устанавливаете, открываете нужный файл MS Word и выбираете Save As -> файл .TEX и всё!

Его можно по-разному настраивать. Настройки по умолчанию вполне сойдут.

Статьи

Статьи Михаила Глоуба о ТеХ'е

"ТеX для всех"    "ТеXнологический прорыв"

Моя статья

Язык знаний — коротко об электронных форматах хранения Знаний.

Еще

Word vs TeX — если вы еще не поняли, чем TeX оличается от Microsoft Word, то загляните.

Ещё пример текста набранного в ТЕХ'е.

Zipped ТеХ (32K)    Zipped PostScript(132K)   

УДАЧИ!




be number one Рейтинг@Mail.ru