GetInfo.Ru – Компьютерная библиотека
Последние поступления
Как выбрать систему управления базы данных
Базы данных03/09/14
Этапы загрузки UNIX (в схеме)
Unix27/03/12
Gatewall Antispam: тотальный контроль электронной почты
Спам21/04/11
Мастер-класс: создаем Интернет-магазин (Часть 1)
Обзоры ПО20/04/11
CorelDRAW Graphics Suite X5: Что нового?
Обзоры ПО20/07/10
Добавить статью
Самые читаемые материалы
Базовая настройка SQUID(115572)
Простая и эффективная система подсчета трафика в ОС FreeBSD(51359)
Совместное использование прозрачного прокси-сервера (Squid) и биллинговой системы UTM(44871)
Настройка Squid(37955)
Настройка VPN и NetUP Radius сервера(35828)
Всего статей: 793Всего авторов: 364Подразделов: 47Добавлено за сутки: 0
Статьи  СТАТЬИ Форум  ФОРУМ Рейтинг  РЕЙТИНГ Поиск  ПОИСК Контакты  КОНТАКТЫ
» Главная » Unix » Верстка в Linux, часть 1

Верстка в Linux, часть 1


Петр Семилетов
http://soft.mail.ru/softclub-main.php

Если вы думаете, что версткой и дизайном можно заниматься исключительно на Mac OS X или Windows, то ошибаетесь. Если считаете, что для этого пригодны только продукты от Adobe, Corel и Quark, то ошибаетесь дважды. Проблема не в том, что под Linux нет программных решений DTP (Desktop Publishing - настольное издательство). Проблема в другом - многие специалисты, работающие в сфере DTP, не знакомы с миром Linux и даже не подозревают, какие возможности предоставляет софт этой системы для их профессиональной деятельности.

Попробую осветить вопрос DTP в Linux, затронув ключевые продукты по областям применения - растровая графика, векторная графика и собственно верстка.

Начнем с последнего. Несколько лет назад один мой знакомый астроном удивил меня, сказав, что свои статьи для научных журналов он верстает самостоятельно и с помощью LaTeX'а. Я тогда мало разбирался в этом вопросе и знал только, что LaTeX - это некая система для форматирования документов. Думаю, у большинства читателей этими сведениями тоже исчерпываются знания о LaTeX.

На самом же деле LaTeX - это удобная надстройка над другой системой верстки - TeX, созданной знаменитым ученым, профессором Стэнфордского университета Доналдом Кнутом. Почти 30 лет назад Кнут сделал TeX в ходе работы над своим фундаментальным трудом "Искусство программирования" (The Art Of Computer Programming). Изначально TeX был ориентирован на научную среду - ему по плечу была верстка текстов, насыщенных формулами, специальными символами, схемами и так далее. Затем появился LaTeX. Сравнивать TeX и LaTeX можно, лишь сравнив ассемблер с Python. Итак, TeX - это низкоуровневый язык разметки. LaTeX же, грубо говоря, предоставляет более удобный уровень представления верстаемого документа - сам документ, главы, секции, и так далее. Кроме того, функциональность LaTeX расширяется посредством так называемых пакетов.

Приведу небольшой пример. Допустим, есть у вас текст книги на русском языке. Надо быстро и качественно сверстать ее для распечатки на бумаге A4. Берете текст и расставляете в нем команды LaTeX:

\documentclass[a4paper,11pt]{report}
\usepackage[T1,T2A]{fontenc}
\usepackage[koi8-ru]{inputenc}
\usepackage[english,ukrainian,russian]{babel}
\author{(c)2005 Иван Иванов}
\title{Иваниада}
\begin{document}
\maketitle
\tableofcontents
\part[Название первой части]{Название первой части}
\chapter[Название первой главы]{название первой главы}

Текст первой главы.
\part[Название второй части]{Название второй части}
\chapter[Название второй главы]{название второй главы}

Текст первой главы.
\end{document}

Теперь пояснительные комментарии. В documentclass вы задаете класс документа. Наиболее популярные классы таковы: book - книга, report - отчет (идеально подходит для распечаток на A4), article - статья, letter - письмо. Верстку LaTeX берет на себя. Вы можете еще указать разные дополнительные параметры - например, "a4paper,11pt" - размер бумаги A4, печатать 11 пунктом.

Следующие три команды usepackage служат для настройки языков, кодировок и пакетов, отвечающих за переносы. Далее устанавливаются значения для author (автор) и title (название), а командой begin начинается блок document, который заканчивается командой end. document здесь выступает в роли ОКРУЖЕНИЯ (environment). Окружение в LaTeX соответствует примерно тому же термину, что и "стиль" в Quark'е. Окружение имеет начальный тэг \begin, после чего в фигурных скобках указывается название окружение. Затем - сам текст, который ты хочешь поместить в окружение. И - замыкающий тэг /end{название окружения}.
Например, в пакете pifont существует окружение itemize для форматирования списка из некоторых элементов, причем каждый элемент предваряется пиктограммой указывающей руки. Пишем:

\begin{dinglist}{43}
\item Nirvana
\item Scorn
\item Guano Apes
\end{dinglist}

В итоге получаем:


Рисунок 1

Но вернемся к примеру документа. Команда maketitle создает страницу с именем автора и названием документа. Команда tableofcontents автоматически генерирует оглавление на основе логической разбивки документа на части и главы. А разбивка эта осуществляется, как вы догадались, командами \part и \chapter.

При этом обратите внимание на параметры для part [название1]{название2}. Название1, которое заключено в квадратные скобках, отображается в оглавлении. А название2, то есть текст в фигурных скобках, отображается непосредственно на странице конкретной части. Тот же синтаксис касается и названий глав.

Итак, приведенного выше шаблона документа достаточно, чтобы получить в результате готовый PDF, сверстанный по всем современным стандартам. Верстает LaTeX, а вы лишь указываете LaTeX'у, что и каким образом ему надо верстать.

Для преобразования исходного LaTeX-файла в PDF либо Postscript, надо сначала получить файл в промежуточном формате - dvi. Такой файл является результатом обработки LaTeX-файла командой latex: latex -file-line-error-style my_file.tex

Здесь мы обрабатываем LaTeX-файл my_file.tex, и получаем на выходе файл под именем my_file.dvi. Замечу, что параметр file-line-error-style нужен для удобного вывода сообщений об ошибках - с указанием номеров строк, где они возникают.

Теперь можем делать с dvi-файлом все, что заблагорассудится. Можно его просмотреть: xdvi my_file.dvi или dviview my_file.dvi

Можно перегнать в PDF с получением my_file.pdf: dvipdf my_file.dvi
Либо преобразовать в Postscript: dvips -Pcmz my_file.dvi -o my_file.ps

На выходе имеем my_file.ps. А уже для просмотра Postscript и PDF используем Kghostview. Альтернативный вариант преобразования LaTeX в PDF таков: pdflatex my_file.tex

Собственно говоря, LaTeX не является исключительно линуксовой системой верстки, просто исторически сложилось, что именно в UNIX-подобных средах он получил наибольшее распространение (и входит в практически в каждый дистрибутив Linux). Сам же LaTeX не накладывает каких-либо ограничений на компьютер и систему, в которых работает верстальщик. Одна из современных книг по LaTeX, Latex For Word Processor Users, сверстана Гуидо Гонзато на компьютере с процессором Z80 и памятью 128 килобайт!

В идеале, для работы с LaTeX достаточно хорошего текстового редактора и интерпретатора командной строки вроде Bash. Однако, существует ряд редакторов, которые облегчают LaTeX-разметку. Среди WYSIWYG-редакторов можно выделить LyX. Тем же пользователи, которые предпочитают иметь дело с исходным кодом, подойдут Kile и мой собственный редактор TEA.


Рисунок 2

Лично я пользуюсь TEA, но TEA - это комбайн, а Kile заточен именно под LaTeX и поэтому предоставляет гораздо больше относящихся к этому функций. С другой стороны, в TEA тоже есть все необходимое (кроме твоих знаний LaTeX, разумеется).

Завершая тему LaTeX, отмечу, что освоение этой системы верстки полезно не только верстальщикам, но и любому человеку, который, занимаясь научной работой, решит когда-нибудь послать статью в какой-нибудь, пусть даже небольшой университетский журнал. И тут - "новость"! Материалы принимаются в LaTeX. Надо признать, что правила приема статей в таких издания зачастую граничат с абсурдом (отпечатай статью в трех экземплярах, разрежь на кусочки и отправь в почтовой карете), однако требование подачи в LaTeX вполне обосновано. Некоторые журналы предоставляют даже свои собственные стили документа для LaTeX.

 
13.04.2005
Версия для печати Версия для печати Запомнить ссылку Запомнить ссылку
Ваша оценка:  1   2   3   4   5     

 О проектеПерепечаткаАвторамПартнерыО нас пишут
Наверх
©2003—2007. GETINFO.RU. ВСЕ ПРАВА ЗАЩИЩЕНЫ.