Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.fds-net.ru/showflat.php?Cat=&Board=study&Number=4635942
Дата изменения: Unknown
Дата индексирования: Mon Apr 11 23:12:13 2016
Кодировка: Windows-1251
TeX FAQ: установка, настройка, использование (21.10.2007) - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
General Discussion >> Study

Страницы: 1
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  TeX FAQ: установка, настройка, использование (21.10.2007) new
      27.05.2006 15:09
20

Содержание FAQ: Также удобно просматривать тред в виде дерева
1. Установка и настройка MikTeX
2. Более тонкие вещи
3. Вставка картинок в TeX
4. Документация к ТеХ
5. Презентации в ТеХ
6. Рисование картинок в METAPOST
6.1 Дополнительная информация по METAPOST (море примеров)
6.2 Редактор картинок для Metapost: Metagraf
7. Использование списка литературы из базы *.bib
8. Микротипографика в TeX
9. Набор формул прямо в форуме: окружение [mаth]..[/math]

BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  1. Установка и настройка пакета MikTeX [re: Basilio]
      27.05.2006 15:04
 

В FAQ собраны основные вопросы, задававшиеся в форуме по ТеХу.
Большая благодарность KOHTPA, Lynn, Axc, green, cepesh, чьи сообщения послужили основой создания этого FAQ. (Ну и я приложил к этому руку)

Про названия и назначение
(La)TeX - это как некий компилятор.
Вы пишиете для него программу (ваш текст) в обычном текстовом редакторе. Мы же не набираем программы на С в Ворде?
В этой программе на некотором птичьем языке (кстати, наиболее употребительные комманды я недавно в FAQ раздела поместил) вы пишете свой текст и формулы.
далее "компилируете" - запускаете (La)Tex на свою программу. на выходе получается некий бинарный файл с расширением .dvi (вроде как от device independant).
Этот файл можно перевести в PDF или в PostScript (см. ниже)
Наиболее распространенный дистрибутив под Windows - MikTeX

Терминология:
TeX - это "движок", (он один для всех TeX-ов)
LaTeX - надстройка над движком - набор макросов + небольшие изменения в движке, (как CounterStrike в HalfLife ). Есть и другие надстройки, например AmsTex(не путать с пакетом ams* в LaTex) и другие..
MikTeX - дистрибутив: TeX + всякие к нему расширения

Установка
0. Необходимые программы для работы:

эти программы бесплатны. GhostScript бесплатен полностью, GhostView просит регистрации. Без регистрации он просто при каждом запуске выводит окошко, о том что он незарегистрирован (можно просто нажать ОК). Других бонусов регистрация не дает.
Используемые редакторы:


Далее предполагается, что вы скачали дистрибутив MikTeX-a с ftp://green и он лежит в каталоге D:\Distr\miktex

1. Устанавливается MiKTeX в минимальном варианте.
Запускатся D:\Distr\miktex\setup.exe

Жмем Next, все интуитивно-очевидно.



Если пакеты скачаны в другую директорию, ее можно указать при помощи кнопки "Browse"

Выбираем путь, куда надо установить MikTeX. Необходимое место ~90Mb

Как назвать группу в меню "Пуск"

Если имелась предыдущая установка MikTeX-а имеет смысл использовать его временные файлы (из каталога c:\localtexmf). Если ТеХ устанавливается впервые, рекомендуется выбрать "Create local TEXMF tree" и "Don't integrate.."

Подтвердить выбранную конфигурацию:

Жмем "Next" и ждем, пока установится.


После этого выбираем в меню "Пуск->Программы->MikTeX->MikTeX options":

На вкладке Packages выбраем всю ветку Languages->Cyrillic:

Доустанавливаем другие нужные пакеты (я для себя устанавливаю
Applications->Graphics->eepic
Documentation->Comprehensive LaTeX symbol list
Formats->LaTeX->LaTeX Contrib->extsizes
Uncategorized->psfig)
Жмем "Apply", ждем, пока установятся пакеты:

На вкладке Languages выбираем russian, можно снять с german, french, ngerman.

Далее на вкладке "General" выбираем Refresh, затем Update:

ждем..


В такой конфигурации MikTeX у меня занял 93Mb (не включая localtexmf). Версия Total занимает около 500Мб. В каком виде ставить ТеХ - решать вам. Если не жалко места на диске и лень возиться с настройками, можно поставить Total (не забудьте только выставить russian на вкладке Languages в MikTex Options).

Проверка работоспособности
Набираем такой файл (a.tex) :
code:
\documentclass{article} \usepackage[cp1251]{inputenc} % inputenc всегда включается ДО babel \usepackage[russian]{babel} \begin{document} Привет, Мир! {\tt Тест шрифта tt} \end{document}

компилируем:
code:
c:\test> latex a.tex

На экран при этом должно выдаться примерно следующее:
code:
C:\test>latex a.tex This is TeX, Version 3.14159 (MiKTeX 2.2) (a.tex LaTeX2e <2001/06/01> Babel <v3.7h> and hyphenation patterns for english, french, german, ngerman, ru ssian, dumylang, nohyphenation, loaded. (C:\texmf\tex\latex\base\article.cls Document Class: article 2001/04/21 v1.4e Standard LaTeX document class (C:\texmf\tex\latex\base\size10.clo)) (C:\texmf\tex\latex\base\inputenc.sty (C:\texmf\tex\latex\cyrillic\cp1251.def)) (C:\texmf\tex\generic\Babel\babel.sty (C:\texmf\tex\generic\Babel\russianb.ldf (C:\texmf\tex\generic\Babel\babel.def) (C:\texmf\tex\latex\cyrillic\t2aenc.def))) No file a.aux. (C:\texmf\tex\latex\cyrillic\t2acmr.fd) (C:\texmf\tex\latex\cyrillic\t2acmtt.fd ) [1] (a.aux) ) Output written on a.dvi (1 page, 324 bytes). Transcript written on a.log.

в результате появится файл a.dvi, который можно просмотреть при помощи встроенного в MikTeX просмотрщика yap:
code:
c:\test> yap a.dvi

выглядит это примерно так:

Примечания:
  • встречаются битые дистрибутивы без шрифта tt :( или неправильно настроенные.
  • после того, как yap был единожды запущен, он автоматически регистрирует в Windows просмотр *.dvi файлов на себя. т.е. до первого запуска yap у этих файлов нет "просмотрщика по умолчанию"
  • Yap = yet another previewer




Редактировал Basilio (21.06.2009 02:38)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  2. Более тонкие вещи [re: Basilio]
      27.05.2006 15:05
 

Создание .ps файлов
dvips a.dvi
Создание .pdf файлов
dvipdfm a.dvi
или
pdflatex a.tex (результат обычно несколько хуже)
или
ps2pdf a.ps (самый правильный вариант)
для работы последнего способа нужно прописать пути к каталогу установки ghostscript. Например, для gs8.14 надо добавить такие пути:
C:\gs\gs8.14\lib;C:\gs\gs8.14\bin

Преамбула и заготовка для написания статей в LaTeX
code:

% -*- mode: LaTeX; coding: cyrillic-alternativnyj-dos; -*-
\documentclass[a4paper,14pt,titlepage,draft]{extarticle}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[T2A]{fontenc}
\usepackage[cp866]{inputenc}
\usepackage{indentfirst}

\usepackage{epic}
\usepackage{eepic}

\usepackage[russian]{babel}


Этого, вроде, достаточно для физико-химика.
extarticle - класс для шрифта в 14 пунктов. Обычный article поддерживает только 10,11,12 пунктов.
indentfirst - пакет для автоматического создания абзацного отступа в первых абзацах. Некоторые использовали \quad - это дурной тон.
a4paper,14pt - указание размера бумаги (по умолчанию принимается американский стандартный размер letter<>a4) и размер основного шрифта текст
draft - "черновой" вариант. Будут видны все overfull-ы в виде черных прямоугольников, рисунки не будут вставлятся, ну и еще по мелочи..
titlepage - будет применено специальное оформление для титульной страницы, задаваемой в \begin{titlepage}...\end{titlepage}

Более привычные начертания букв и символов (по умолчанию ):
code:

\renewcommand\phi\varphi
\renewcommand\kappa\varkappa

\renewcommand\leq{\leqslant}
\renewcommand\geq{\geqslant}



Этого не хватало:
code:

\renewcommand\lg{\mathop{\rm lg}\nolimits}
\renewcommand\ln{\mathop{\rm ln}\nolimits}
\newcommand\sign{\mathop{\rm sign}\nolimits}


// а также tg, ctg

code:

\newcommand\lp{\left(}
\newcommand\rp{\right)}
\newcommand\pdv[2]{\frac {\partial #1}{\partial #2}}
\newcommand\pddv[2]{\frac {\partial^2 #1}{\partial #2^2}}



Так устанавливаются поля:
code:

\usepackage{geometry}
\geometry{a4paper,top=2cm,bottom=3cm,left=3cm,right=1.5cm}



Более правильный способ нумерации разделов (точки после номеров):
code:

\makeatletter
\renewcommand{\@biblabel}[1]{#1.\hfill}

\renewcommand{\thesection}{\arabic{section}.}
\renewcommand{\thesubsection}{\thesection\arabic{subsection}.}
\renewcommand{\thesubsubsection}{\thesubsection\arabic{subsubsection}.}

\long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  \sbox\@tempboxa{#1. #2}%
  \ifdim \wd\@tempboxa >\hsize
    #1. #2\par
  \else
    \global \@minipagefalse
    \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
  \fi
  \vskip\belowcaptionskip}

\makeatother



Увеличенный интервал:
code:

\renewcommand{\baselinestretch}{1.2}





Редактировал Basilio (27.05.2006 15:15)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  3. Вставка картинок в ТеХ [re: Basilio]
      27.05.2006 15:05
 

Вставка картинок в ТеХ
Наиболее правильным и удобным форматом для вставки является Encapsulated Postscript - *.eps
Но MikTeX поддерживает и другие форматы вставляемых картинок.
Предположим, у вас есть картинка a.eps, которую вы хотите вставить в файл.
для этого в преамбуле нужно написать:
code:

\usepackage{graphicx}


В тексте использовать такую команду:
code:

\includegraphics[width=1cm,height=2cm,angle=-45]{a.eps}


Про параметры лучше всего почитать в документации - здесь приведены наиболее часто используемые.
Например, если файл a.eps содержит такую картинку:

а в тексте написано:
code:

... а теперь мы получим такой бантик
\includegraphics[width=12pt,height=12pt,angle=90]{a.eps}
, который можем ...


то на печати это будет выглядеть так:

(текст набран шрифтом в 10 пунктов)

Аналогичным образом можно подключать картинки в формате .ps и .pdf

Для подключения картинок в растровых форматах (*.bmp, *.jpg, *.png, etc), необходимо указать еще один параметр:
code:

\includegraphics[width=5cm,height=5cm,angle=90,bb=0 0 200 200]{a.png}


В параметре bb=... нужно указать размеры картинки в пикселях.
  

Вниманию пользователей Photoshop
При сохранении картинки как eps, отключите сохранение preview:

в противном случае ваша картинка не будет правильно воспринята ТеХ-ом



Редактировал Basilio (27.05.2006 15:16)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  4. Документация по TeX-у [re: Basilio]
      27.05.2006 15:07
 

Во-первых
Документация идет в комплекте с MikTeX-ом, расположена в каталоге
C:\texmf\doc (вместо С: подставить букву, куда вы ставили MikTeX)
Вся документация на английском языке (очень редко попадается немецкий и французский)
Список всех символов ТеХа:
C:\texmf\doc\guides\symbols\symbols-a4.pdf
c:\texmf\doc\latex\comprehensive\symbols-a4.pdf (в новом дистрибутиве)
Во-вторых
Львовский
В-третьих
Очень рекомендую книгу
М. Гуссенс, Ф. Миттельбах, А. Самарин "Путеводитель по пакету LaTeX и его расширению LaTeX2e"
Издательство "МИР", 1999 г, 606 страниц.
У этих авторов есть другие книги по ТеХу, но они мне показались менее хорошими (в частности, в этой книге описан пакет indentfirst, а в других - нет)
Гуссенс


http://elib.hackers/book.php?id=2538 - Гуссенс
http://elib.hackers/book.php?id=2476 - Львовский
Еще книги http://elib.hackers/catalogue.php?dir=4_2#4_2
Спасибо cepesh



Редактировал Basilio (27.05.2006 15:16)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  5. Презентации в TeX-е [re: Basilio]
      27.05.2006 15:08
 

Ниже приведена краткая выдержка из документации по пакету beamer и
некоторые соображения из личного опыта.

1. Почему LaTeX, а не PowerPoint?
Приведу основные аргументы, они примерно те же, что и LaTeX vs MsWord:
* Более гибкая и удобная настройка класса/стиля/темы всего документа.
* Корректная работа с формулами (с большим количеством формул!).
* Дистрибутивы TeX-а бесплатны.

2. Что такого есть в PowerPoint, чего нельзя сделать в LaTeX?
* Интерактивность - в PowerPoint можно использовать VBA, в LaTeX - нет.

3. Создание презентации.
Используется класс beamer.
Необходимо уставить пакеты beamer, xcolor, pgf и cm-super

Проще всего обучится на примерах.
Тексты всех примеров в архиве: http://forum.local/user/upload/file2078.zip
Документация на пакет beamer:
<texmf>\doc\latex\beamer\doc
<texmf>\doc\latex\beamer\examples
<texmf>\tex\latex\beamer\solutions

Итак, пример ?1 - общая структура - ex1.tex:
code:

\documentclass[unicode]{beamer}
% параметр unicode обеспечивает нормальные русские названия в
% "оглавлении PDF" - см. картинку http://forum.local/user/upload/file3123.png

\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
% более-менее стандартная преамбула

\begin{document}

\section{Первая секция}

\begin{frame}
  \frametitle{Первый слайд первой секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}
\begin{frame}
  \frametitle{Второй слайд первой секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}
\section{Вторая секция}
\begin{frame}
  \frametitle{Первый слайд второй секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}
\end{document}



Компилировать: pdflatex ex1.tex, на выходе - файл ex1.pdf - готовая презентация.

Пример ?2 - титульный лист, заголовки, подзаголовки и т.п.:
code:

\documentclass[unicode]{beamer}

\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}

\mode<presentation>
{
  \usetheme{Dresden}
  % темы оформления - default,...
  % советую попробовать - Warsaw, Dresden, Madrid
}

\title[Короткое название] %
{Длинное название презентации}

\subtitle
{Небольшая подпись к названию}

\author[Петров, Васечкин] % [] - только если авторов много: >3
{И.~Петров\inst{1} \and А.~Васечкин\inst{2}}
% \inst - указывает, из каких организаций авторы.
% имеет смысл указывать, если они из разных организаций

\institute[Организация Петрова и Васечкина] %
{
  \inst{1}%
  Первый Отдел \\
  АО "МММ"
  \and
  \inst{2}%
  Факультет \\
  MTv}

\date[ФЛ:Study 2006] % Короткая информация типа "Дата"
% - обычно аббревиатура конференции. Правило хорошего тона указывать конференцию -
% не столько для участников, сколько для людей, которые будут читать эту презентацию
% с компьютера
{Форум.Локал, Study - \LaTeX{} FAQ, 2006}

\subject{\LaTeX FAQ: презентации}
\begin{document}


\begin{frame}
  \titlepage
\end{frame}

\section{Первая секция}
\label{sec:sec1}
\begin{frame}[label=s1]
  \frametitle{Первый слайд первой секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}
\begin{frame}[label=s2]
  \frametitle{Второй слайд первой секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}
\section{Вторая секция}
\label{sec:sec2}
\begin{frame}[label=s3]
  \frametitle{Первый слайд второй секции}
  Тест
  Тест
  Тест Бла-бла-бла
\end{frame}

\end{document}




Наконец, немного глянца: окрывание элементов, список литературы, графики..
ex2.tex:

code:

\documentclass[unicode]{beamer}
\DeclareGraphicsRule{*}{mps}{*}{}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\usepackage{pause}

\mode<presentation>
{
  \usetheme{Warsaw}
  % темы оформления - default,...
  % советую попробовать - Warsaw, Dresden, Madrid
  \setbeamercovered{transparent}
  % or whatever (possibly just delete it)
}

\title[Короткое название] %
{Длинное название презентации}

\subtitle
{Небольшая подпись к названию}

\author[Петров, Васечкин] % [] - только если авторов много: >3
{И.~Петров\inst{1} \and А.~Васечкин\inst{2}}
% \inst - указывает, из каких организаций авторы.
% имеет смысл указывать, если они из разных организаций

\institute[Организация Петрова и Васечкина] %
{
  \inst{1}%
  Первый Отдел \\
  АО "МММ"
  \and
  \inst{2}%
  Факультет \\
  MTv}

\date[ФЛ:Study 2006] % Короткая информация типа "Дата"
% - обычно аббревиатура конференции. Правило хорошего тона указывать конференцию -
% не столько для участников, сколько для людей, которые будут читать эту презентацию
% с компьютера
{Форум.Локал, Study - \LaTeX{} FAQ, 2006}

\subject{\LaTeX FAQ: презентации}
\begin{document}


\begin{frame}
  \titlepage
\end{frame}

\section{Первая секция}
\label{sec:sec1}
\begin{frame}[label=s1]
  \frametitle{Первый слайд первой секции}
  \begin{itemize}
  \item<1-3> Тест
  \item<2-4> Тест
  \item<3-5> Тест
  \begin{itemize}
  \item Бла
  \item<-2> бла
  \item<3-> бла
  \end{itemize}
  \item Последняя
  \end{itemize}
\end{frame}
\begin{frame}[label=s2]
  \frametitle{Второй слайд первой секции}
  \begin{enumerate}
  \item Тест \pause
  \item Тест \pause
  \item Тест \pause
   \begin{enumerate}
   \item Бла
   \item бла
   \item бла
   \end{enumerate}
  \end{enumerate}
\end{frame}
\section{Вторая секция}
\label{sec:sec2}
\begin{frame}[label=s3]
  \frametitle{Первый слайд второй секции}

  \includegraphics[width=5cm]{eff.1}
  \includegraphics[width=5cm]{ris.6}

\end{frame}

\appendix
\section<presentation>*{\appendixname}
\subsection<presentation>*{Прочее}

\begin{frame}[allowframebreaks]
  \frametitle<presentation>{Список литературы}
    
  \begin{thebibliography}{10}
    
  \beamertemplatebookbibitems
  % книжки-книжки-книжки

  \bibitem{Author1990}
    A.~Author.
    \newblock {\em Handbook of Everything}.
    \newblock Some Press, 1990.
 
    
  \beamertemplatearticlebibitems
  % статьи-статьи-статьи

  \bibitem{Someone2000}
    S.~Someone.
    \newblock On this and that.
    \newblock {\em Journal of This and That}, 2(1):50--100,
    2000.
  \end{thebibliography}
\end{frame}

\end{document}




выглядит третий пример примерно так:








Редактировал Basilio (27.05.2006 15:17)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  6. Рисование рисунков в METAPOST [re: Basilio]
      27.05.2006 15:08
 

Рисование схематических рисунков в MetaPost.

METAPOST - это программа, входящая в комплект MikTeX (mpost.exe) и TeTeX (mp).

Назначение - создание векторных рисунков, которые можно было бы удобно вставлять
в документы TeX.

Основной цикл функционирования:
У вас есть файл doc.tex, в который вы хотите вставить рисунок.

Рисунок вы описываете на некотором языке программирования в файле,
скажем ris.mp

После этого вы "компилируете" файл ris.mp при помощи программы METAPOST:
code:

mpost ris.mp


в результате чего получаются файлы с рисунками (если их несколько), которые обычно называются ris.1, ris.2 и т.д.

На самом деле эти файлы являются PS-файлами с некоторым оговорками.
В частности, в эти файлы не включается информация о шрифтах. То есть, если вы использовали надписи в картинках то посмотреть их "отдельно от документа" не получится. Если же использовались только линии-фигуры то рисунок можно просматривать обычной PS-смотрелкой (gsview32 для win32 или ghostview для unix).

Далее, в файле doc.tex в то место, в которое вы хотите вставить рисунок пишете
обычную для таких целей команду:
code:

\includegraphics{ris.1}



Компилируете файл doc.tex, получаете doc.dvi. Yap (про xdvi информации нет) не всегда может корректно отобразить рисунок из METAPOST-а, поэтому рекомендуется оценивать результат из просмотрщика PS-файлов, предварительно переведя doc.dvi в
ps-файл при помощи команды

code:

dvips doc.dvi



На unix такая команда обычно сразу посылает документ на принтер, поэтому
надо запускать так: dvips doc.dvi -o doc.ps


В полученном файле doc.ps картинки из METAPOST-а должны смотрется уже нормально.

Как всегда, документация идет в комлекте с TeX-ом и расположена в каталоге
c:\texmf\doc\metapost\
(в c:\texmf\doc\metapost\base расположено описание базовых возможностей)

Краткое описание языка METAPOST
Разберем на примерах:
code:

% Первый рисунок
beginfig(1)
 pair shift;

 u:=1mm;

 shift:=(1,0)*u;
 for i:=1 upto 10:
  draw fullcircle scaled (2*i*u) shifted (shift*i) withcolor (red*i/10);
 endfor;

endfig;

% Второй рисунок
beginfig(2)

u:=3cm;
pair v[];

drawarrow (-1.2,0)*u--(1.2,0)*u;
drawarrow (0,-1.2)*u--(0,1.2)*u;
draw fullcircle scaled (u*2);

for i=0 upto 2:
 v[i]:=(cosd(i*120+35), sind(i*120+35))*u;
endfor;

ahlength:=0.1*u;
ahangle:=15;

drawarrow (0,0)--v[0];
drawarrow (0,0)--v[1];
drawarrow (0,0)--v[2];
draw v[0]--v[1]--v[2]--v[0];

label.llft(btex $O$ etex,(0,0));
label.top (btex $x$ etex,(1.1,0)*u);
label.rt (btex $y$ etex,(0,1.1)*u);

label.urt (btex $\omega_1$ etex,v[0]);
label.ulft(btex $\omega_2$ etex,v[1]);
label.bot (btex $\omega_3$ etex,v[2]);

endfig;

 
end;



Первый пример



Структура файла ris.mp:
Комментарии - строки, начинающиеся со знака '%' - игнорируются.
Отдельные рисунки выделяются командами
code:

beginfig(suffix)
...
endfig;



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

Переменные появляются в момент обращения к ним - обычно нет надобности явно объявлять переменные (как в языках подобных FORTRAN, BASIC).

Однако правилом хорошего тона является явное объявление переменных, не являющихся целыми и вещественными.

В первом рисунке задается "единица масштаба" u равной 1мм. А также заводится переменная типа "пара вещественных чисел" - pair с именем "shift". shift инициализируется значением (1мм, 0мм).

Следует обратить внимание на две различные операции: ":=" и "=". При помощи первой происходит явное присвоение значения переменной, в то время как вторая используется для решения уравнений. Например:

code:

x:=3;
x=3*y;



В первом случае происходит запись значения "3" в переменную "x".
Во втором случае (поскольку значение "х" известно) METAPOST пытается "решить" уравнение x=3*y и вычислить необходимое значение для переменной "y".

Далее организуется простой цикл для 10 шагов 1..10, в котором рисуется (draw) полная окружность (fullcircle) выбранным диаметром (scaled (2*i*u)) со сдвигом (shifted (shift*i)) с цветом (withcolor (red*i/10)).

draw рисует "линии" - "paths".
Это такой тип. Можно объявить переменную типа path, определить ее каким-то образом и рисовать:
code:

path p;
p:=...;
a:=30; % угол в 30 градусов
 draw p;
 draw p scaled S;
 draw p shifted s1;
 draw p shifted s2;
 draw p rotated a;



Цвет указывается при помощи "withcolor COLOR".
COLOR - это тройка (в отличии от пары) чисел, можно считать "вектор" в трехмерном пространстве. С цветом можно делать интуитивно-очевидные операции:
code:

color c;
 c:=white*0.5; % серый 50%
 c:=white*0.1; % серый 10% - почти черный
 c:=red*0.5 + green*0.4; % смешивание цветов - красного и зеленого
...
 draw ... withcolor c;



Второй пример


Определяется масштаб, объявляется массив пар v (="точки на плоскости").

Рисуются координатные оси. drawarrow рисует линию со стрелкой на конце.
Если линия кривая, то и стрелка будет кривая:


Рисуется большой круг (draw fullcircle..).

Определяются три точки. cosd sind - функции косинуса и синуса, аргумент измеряется в градусах.

ahlength, ahangle - регулируется форма головы у стрелки: соответственно, длина и угол (насколько стрелка "острая").

Далее, рисуются три вектора из начала координат в три вершины (это можно было сделать и в цикле, но что так три строки, что с циклом три строки).

Рисуется ломаная при помощи draw ()--()--()--().
Можно рисовать "гладкую кривую" при помощи draw ()..()..()..()

Расставляются метки:
label.POS(text, coord);

coord - координата привязки метки. text - рисуемый текст (можно использовать tex-тэги, что и продемонстрировано).

POS - позиция надписи относительно координаты:
lft - слева от координаты
llft - слева снизу (lower-left)
lrt - справа снизу
bot - снизу
rt - справа
urt - справа сверху (upper-right)
top - сверху
ulft - слева сверху



Особенности METAPOST с надписями на русском языке

для того, чтобы делать надписи на русском языке при помощи команд label необходимо:
1. в самом начале файла написать такую "преамбулу":
code:

% +MP-ADDITIONAL-HEADER
verbatimtex
%&latex
\documentclass{article}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\begin{document}
etex
% -MP-ADDITIONAL-HEADER


2. METAPOST запускать следующим образом:
code:

mpost rist.mp --tex=latex





Редактировал Basilio (27.05.2006 15:17)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  7. Использование базы списка литературы в формате *.bib [re: Basilio]
      27.05.2006 15:09
 

BibTeX: Список литературы
Обычно в крупных научных сообществах циркулирует своя база литературы. Чтобы ссылки на одни и те же книги были оформлены одинаково, рекомендуется использовать эту базу. Для этого используется специальная программа "bibtex", которая автоматически собирает из документа ссылки на литературу и в список литературы вставляет только то, на что ссылается автор.
Вот один пример такой базы: http://forum.local/user/upload/file4990.zip (более 100 наименований) - взят с кафедры механики композитов мехмата.
Если у вас есть своя база - можете выслать и она будет размещена здесь.

Далее идет описание использования этой базы.
В том месте, где нужно вставить список литературы в документе поставить (предполагается, что база литературы лежит в файле lit.bib):
code:
\bibliographystyle{unsrt} \bibliography{lit}


стиль списка литературы смотреть в документации - в частности, unsrt будет формировать список литературы в порядке цитирования. Другие могут использовать другие способы сортировки/оформления списков. Например, в алфавитном порядке по автору.

Далее - посмотреть на список литературы - файл lit.bib. Он должен содержать нечто типа:
code:
% ------------------------------------------------------------------------ % BIBLIOGRAPHY FILE % ------------------------------------------------------------------------ @ARTICLE{Bahvalov:1975, author = "Бахвалов Н.С.", title = {Осреднение дифференциальных уравнений с частными производными с быстро осцилирующими коэффициентами}, journal = {ДАН СССР}, volume = {221}, number = {3}, year = {1975}, pages = {516-519}, language = "russian" } @BOOK{BZHK:2001, author = "Бахвалов, Н. С. and Жидков, Н. П. and Кобельков, Г. М.", title = {Численные методы}, publisher = {Физматлит}, year = {2001}, address = {Москва -- Санкт-Петербург}, pages = {630}, language = "russian" } ....

Запомнить-записать метки и ссылаться на них следующим образом:
code:
... как это показано в статье \cite{Bahvalov:1975}, ...


Далее, запустить latex на основной файл (пусть он называется main.tex):
code:
latex main.tex

В результате ТеХ должен дать некоторое количество предупреждений про неопределенные ссылки на литературу.
далее, нужно запустить BibTex:
code:
bibtex main

Обратите внимание на то, что main без расширения. В результате будет создан файл main.bbl. После этого снова запустить latex, два раза:
code:
latex main.tex latex main.tex


Русский язык в BibTeX

При использовании стиля unsrt (сортировка списка в порядке цитирования), язык документа не влияет на порядок сортировки списка литературы.

Однако в большинстве крупных работ (диссертация, монография и т.п.), где библиография насчитывает 100+ источников, требуется чтобы список литературы был отсортирован по автору. Проблема bibtex-а в том, что он работает только с латиницей, поэтому список из русских авторов сортируется непредсказуемым способом.

Используемые инструменты: bibtex8 (адаптированная версия bibtex-а для однобайтных кодировок - cp866, 1251, koi-8. к сожалению, с utf-8 видимо не судьба), babelbib, патч для русского языка.

Итак, первое:
Нужно правильно оформить авторов в списке литературы. Авторы должны выглядеть так:
code:
author = "Бахвалов, Н. С. and Жидков, Н. П. and Кобельков, Г. М.",

В двойных кавычках, "Фамилия, И.О." или "И.О. Фамилия"; несколько авторов разделяются словом "and". Подробнее смотреть в документации (на английском языке) и в Гуссенсе-Миттельбахе-Самарине (на русском)

Второе.
Установить пакет babelbib. скачать указанный патч, распаковать в каталог, где лежат исходники babelbib-а, у меня это P:\texmf\source\babelbib\latex\babelbib.
в этом каталоге среди прочего должны быть файлы:
code:
babelbib.dtx babelbib.ins

Применить патч:
code:
patch < rus.patch

patch.exe - это стандартная утилита из unix, для windows есть пакет http://unxutils.sourceforge.net - содержит многие полезные утилиты (awk, sed, patch, grep - перечислять долго).
Как пользоваться patch-ем - читайте документацию, например тут:
http://www.freebsd.org/cgi/man.cgi?query=patch

Третье.
Переустановнить babelbib: запустить
latex babelbib.ins
затем
latex babelbib.dtx
затем
texhash (или в Пуск-...-MikTex-MikTex Options, кнопка "refresh database")
Все, система готова.

Подключаем нужный пакет:
\usepackage{babelbib}
В качестве стиля литературы используем
\bibliographystyle{babplain}

Процедура запуска слегка отличается, но в целом такая же:
code:
latex main.tex bibtex8.exe --huge --csfile "cp1251.csf" main latex main.tex latex main.tex


bibtex8 - работает с 8-битными кодировками. --huge - использовать больше памяти, --csfile - явное указание используемой кодировки. (см. поддерживаемые кодировки в каталоге texmf\bibtex\csf )

Чтобы bibtex8 правильно вызывался из WinEdt-а, нужно установить переменную среды (Мой компьютер - свойства - дополнительно - переменные среды) с именем bibtex и значением
code:
bibtex8.exe --huge --csfile "cp1251.csf"


Напоследок:
Описанная схема дает список только используемой литературы. В этом и весь смысл bibtex-а: есть база на 1000 элементов, а в статью/диплом/курсовую/итд идут только те, на которые имеются ссылки. Если хочется сгенерировать список литературы, содержащий всю базу, нужно в документе написать:
code:
\nocite{*}




Редактировал Basilio (09.09.2007 23:11)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  6.1 Дополнительная информация по METAPOST [re: Basilio]
      15.10.2006 00:53
 

http://en.wikipedia.org/wiki/Metapost
http://ru.wikipedia.org/wiki/Metapost
http://www.tug.org/metapost.html
Море примеров: http://tex.loria.fr/prod-graph/zoonekynd/metapost/metapost.h...



Редактировал Basilio (15.10.2006 01:01)
Shurick
Bad Man

Рег.: 30.08.2002
Сообщений: 6379
Рейтинг: 303
  8. Микротипографика в TEX [re: Basilio]
      15.04.2007 14:51
 

Микротипографика - специальная техника размещения текста на странице для улучшения общего восприятия с помощью небольшой корректировки расположения отдельных символов. Одна из наиболее интересных возможностей - кернинг букв текста с границами документа для компенсации оптических неровностей, возникающих при стандартном наборе.

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

Подробнее можно ознакомиться в следующей литературе:
- http://www.tex.ac.uk/tex-archive/macros/latex/contrib/microt...
- http://www.pragma-ade.com/pdftex/thesis.pdf
- http://www.artlebedev.ru/kovodstvo/120/

В TEX встроены необходимые алгоритмы для использования микротипографики, однако в стандартном комплекте отсутствует конфигурация для кириллических шрифтов. Предлагается следующее решение:
1) в преамбулу документа добавляется строка
code:
\usepackage{microtype}

2) в рабочем каталоге создается документ microtype.cfg, архив (1930 байт): http://forum.local/user/upload/file4428.zip

Данный конфигурационный файл получен из входящего в комплект добавлением упоминания о кодировке T2A. Числа в квадратных скобках задают величину смещения символов относительно границы набора слева и справа соответственно в десятых долях процента от ширины символа.



Редактировал Basilio (15.04.2007 16:43)
Joe_Bishop
Carpal Tunnel

Рег.: 05.09.2005
Сообщений: 5597
Рейтинг: 154
  9. Оформление титульных листов. [re: Shurick]
      28.04.2007 09:56
 

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

Чтобы указать компилятору, что нужно отступить на N частей, используется команда
 
code:
\vspace* {\stretch {N}}

Наш пример будет записываться так: (N=3, M=3, K=2)
 
code:
\begin{titlepage} \vspace*{\stretch{3}} \noindent \center{первая метка} \vspace*{\stretch{3}} \newline \noindent \center{вторая метка} \vspace*{\stretch{2}} \newline \end{titlepage}


Пример титульного листа:
 
code:
\begin{titlepage} \center{ \large Московский Государственный Университет им.\,М.\,В.\,Ломоносова\\ Механико-математический факультет\\ Кафедра вычислительной математики\\ \vspace*{\stretch{3}} {\Huge \textbf {Курсовая работа}}\\ студента 999 группы\\ {\large Иванова Ивана Ивановича}\\ \begin{center} \Large Декомпиляция программ из машинного кода в язык программирования C \end{center} \vspace*{\stretch{2}}} \flushright { \large Научный руководитель:} \flushright { \large д.\, ф.-м.\, н., \, профессор Петров Петр Петрович } \vspace*{\stretch{1}} \begin{center} \large Москва, 2007 \end{center} \end{titlepage}




Редактировал Basilio (21.10.2007 20:14)
Stepank
newbie

Рег.: 17.10.2005
Сообщений: 25
Из: *****
Рейтинг: 5
  6.2. Редактор картинок для Metapost: MetaGraf [re: Basilio]
      26.09.2007 01:59
 

Metagraf-5 - удобный редактор для создания картинок в metapost и tex
(для Windows, требуется Java). Добавил файл на \\green.hackers\incoming.

Сайт программы:
http://w3.mecanica.upm.es/metapost/metagraf.php



Редактировал Basilio (21.10.2007 20:15)
BasilioМодератор
GreenOne

Рег.: 14.10.2002
Сообщений: 13749
Из: Москва
Рейтинг: 3476
  9. Окружение [math] на форум.локал [re: Basilio]
      21.10.2007 20:25
 

Реализована новая фича: окружение [mаth]..[/math]
например:
code:
[math][res=200]{\begin{equation*} A = \begin{pmatrix} a_{11} & \ldots & a_{1n} \\ \vdots & \ddots & \vdots \\ a_{m1} & \ldots & a_{mn} \end{pmatrix} \end{equation*}} [/math]

результат:
[math][res=200]$ A = \begin{pmatrix} a_{11} & \ldots & a_{1n} \\  \vdots & \ddots  \vdots \\  a_{m1} & \ldots & a_{mn}  \end{pmatrix} $[/math]

Параметр [res=200] управляет размером изображения. чем больше число - тем крупнее картинка.

Storm_Trooper
Имперский штурмовик

Рег.: 11.03.2008
Сообщений: 66
Из: Корусант
Рейтинг: 71
  Re: 9. Оформление титульных листов. [re: Joe_Bishop]
      16.03.2008 17:24
2

Красивый вариант титульного листа
Формат был согласован с учебной частью мехмата (в прошлом году).
выглядит вот так:


Polyastrida
original rags

Рег.: 29.04.2005
Сообщений: 946
Из: Moscow
Рейтинг: 47
  Re: TeX FAQ: установка, настройка, использование (21.10.2007) [re: Basilio]
      02.04.2008 01:39
2

Оформление статьи для Вестника МГУ, серия 1 Математика. Механика.
Стилевой файл vestnik.sty и пример оформления статьи


Emacs
Carpal Tunnel

Рег.: 19.06.2008
Сообщений: 4873
Рейтинг: 1683
  Re: TeX FAQ: установка, настройка, использование (21.10.2007) [re: Basilio]
      31.10.2008 00:10
 

То, что я сейчас опишу относится к электронной форме документа. На печать оно не должно оказывать никакого влияния
Подсветка ссылок в тексте, генерация древовидной структуры текста. Кроме того, щелчок по ссылке (пункт оглавления, номер формулы, url) будет приводить к перемещению на соотв. часть в тексте (ну, или открытию браузера, почтового клиента, т.п.)
Всего нужно добавить:
\usepackage[unicode,colorlinks=true]{hyperref}.
Будет выглядеть примерно так:




Ein Gemeinschaft, Ein Platform, Ein Emacs
А что за тема с белым кошаком?
Страницы: 1

General Discussion >> Study

Дополнительная информация
0 зарегистрированных и 1 анонимных пользователей просматривают этот форум.

Модераторы:  Basilio, The_Nameless_One 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в