Новые информационные технологии и программное обеспечение
  RSS    

20231229 200x300 0d249f2d3676e05c1a28a375dff09c2a



TeX, LaTeX, XeTeX и другие - описание разновидностей систем верстки

Кратко обосновных системах верстки

TeX


 TeX система компьютерной вёрстки, разработанная американским профессором информатики Дональдом Кнутом в целях создания компьютерной типографии. В неё входят средства для секционирования документов, для работы с перекрёстными ссылками. Многие считают TeX лучшим способом для набора сложных математических формул. В частности, из-за этих возможностей, TeX популярен в академических кругах, особенно среди математиков и физиков.
 Для тех кто хочет почитать про историю TeX она хорошо написана на википедии. После выпуска TeX, стали появляться различные системы, которые упрощали(ют) использование Tex, или преследуют определенные цели (например использования языка программирования в документе).

LaTeX


 LaTeX — наиболее популярный набор макрорасширений (или макропакет) системы компьютерной вёрстки TeX, который облегчает набор сложных документов

XeTeX


 Первый выпуск XeTeX состоялся в 2004 году, последняя версия появилась в сентябре 2010 года. Он использует Unicode. Позволяет использовать различные шрифты в системе, без настройки шрифтов TeX. Отдельной интересной особенностью является возможность использовать русскоязычные команды и макроопределения.
Приведём пример использования XeTeX, который собирается с использованием
xelatex:
\documentclass{article}
\usepackage{polyglossia}
\newcommand{\названиекоманды}[2]
{
Параметр 1: #1

Параметр 2: #2
}
\begin{document}
\fontspec{Times New Roman}{Текст написан с использованием Times New Roman}

\fontspec{Verdana}{Текст написан с использованием Verdana}

\названиекоманды{Первый параметр}{Второй параметр}

\end{document}

LuaTeX

Когда я писал курсовую по статистике у меня были мысли: Как можно сформировать
таблицу, где пара соседних столбов высчитывалась? Конечно когда я увидел, что
есть LuaTeX сразу подумал: Я ведь мог написать, что-то вроде:
\begin{table}
\directlua{
a={1,2,3}
b={1,2,3}
for x = 1,3
do
print(a[x].. " & "..b[x].." & ".. (a[x]+b[x]) .." \\")
end}
\end{table}

К сожалению увы данный код не работает. Данный продукт находиться в разработке и не вышло ни одного стабильного релиза на текущий момент. В LuaTeX Reference говорится, что продукт не готов к production, и пользователи не могут рассчитывать ни на стабильность, ни на то, что текущая функциональность будет сохранена в следующих версиях. (The current version of LuaTEX is not meant for production and users cannot depend on stability, nor on functionality staying the same.) На текущий момент можно к примеру сделать так:
... в теле документа ...
\directlua{
for x =1,10
do
tex.write(x*x)
end
}
... конец документа ...

BibTex


BibTex позволяет отделить список источников в отдельный файл(ы), от непосредственного его формирования в LaTeX'е. Его использование не составляет проблем: создаётся файл с расширением bib, где описываются источники (статьи, издания книги и другие типы источников). Потом в документе пишутся две команды: \bibliographystyle{gost71u} \bibliography{filename}, где непосредственно указывается: в первом случае это стиль оформления(можно выбрать разные стили оформления, например: без сортировки, по гостам, сортировка по фамилиям авторов и другие), во втором случае указывается имя bib файла без расширения.
В качестве примера приведём оформление вымышленной книги:
@Book{tag_vum,
author={Некий,вымышленный,персонаж and Фигзнаеткто,Ф.З.К.},
title={Мифическая книжка некоего мифического персонажа},
publisher={главное Юпитерское агенство},
year={12151 г. до н.э.},
address={Юпитер},
language={russian},
}

 При этом результат и последовательность вывода этих параметров будет зависеть от стиля указанного в соответствующей переменной. При первом использовании gost71u столкнулся с проблемой кодировки в bib файле, а так же проблемой, что не выводились инициалы автора. Решение нашёл на linux.org.ru. Оно заключалось в том, что бы в файле (к примеру gost71u.bst) заменить "{vv~}{ll}{~jj}{~f.}" на "{vv~}{ll}{~jj}{~ff}".

ConTeXt

К сожалению мне не удалось найти много информации на русском по ConTeXt, а писать, что это система вёрстки я не вижу смысла. Поэтому если кому-нибудь захочется больше о нём узнать, то можете обратиться к литературе с номерами 9,10,11.

Omega

Омега является расширением для TeX, которая использует юникод, которая была написана John Plaice и Yannis Haralambous, после заморозки TeX в 1991 году. Она включает новый 16 битный юникод, а так же несколько шрифтов, которые широко охватывают алфавиты. В 2004 году на конференции TeX Users Group один из двух разработчиков John Plaice решил отойти (split off) к новому проекту, который ещё не опубликован, Haralambous продолжал работать над Омегой. LaTeX для Omega — lambda.
Хотя проект Омега был перспективным его разработка шла медленно, а функциональность в значительной мере не стабильной. Отдельный проект был начать с целью стабилизировать код и использовать с e-Tex, название которого Aleph, во главе с Giuseppe Bilotta. Latex версия Aleph называется Lamed.
 Aleph больше не развивается, но большинство его функциональности была интегрирована в LuaTeX, новый проект который финансируется Университета Штата Колорадо (через ориентированный TeX Project by Idris Samawi Hamid) и NTG.Разработка LuaTeX началась в 2006 году, первая бета версия летом 2007. Это приемник Aleph и Pdftex, используя Lua как интегрированный лёгкий язык программирования. LuaTex разработан Taco Hoekwater.

Список литературы


[1] ru.wikipedia.org/wiki/TeX — Статья про TeX
[2] ru.wikipedia.org/wiki/LaTeX — Статья про LaTeX
[3] ru.wikipedia.org/wiki/XeTeX — Статься про Xetex
[4] www.ctan.org/tex-archive/systems/luatex/manual/luatexref-t.pdf — LuaTeX Reference (англ)
[5] en.wikipedia.org/wiki/LuaTeX — Статься про LuaTeX (англ)
[6] ru.wikipedia.org/wiki/BibTeX — Статья про BibTex
[7] www.linux.org.ru/forum/general/1782585 — Спорное решение проблемы с инициалами
[8] www.linux.org.ru/news/opensource/3450354/page1#comment-3452929 — Мнение по поводу данного решения проблемы
[9] en.wikipedia.org/wiki/ConTeXt — Статься про ConTexT (англ)
[10] offline.computerra.ru/2006/634/263569/ — Введение в ConTEXt
[11] sovety.blogspot.com/2008/09/context.html — Знакомство с ConTeXt
[12] en.wikipedia.org/wiki/Omega_(TEX) — Статья по Омеге (англ)

Оставьте свой комментарий!

Добавить комментарий


 

Самое читаемое:

Быстрый поиск

Инструкции к программам

Инструкции к программам

Сайт "Новые Информационные Технологии" содержит лишь справочные данные из открытых источников. Мы НЕ Рекламируем и НЕ Рекомендуем покупать или использовать ВСЕ упомянутые на сайте программы, оборудование и технологии