Котельников И., Чеботаев П. LaTeX2e по-русски (1185906), страница 11
Текст из файла (страница 11)
Эти программы на основе информации в файлеjobname.dvi создают растровое изображение печатного документа, состоящее изпикселей (точек разных цветов). Полученное изображение выводится на устройство с заданным разрешением. Разрешение устройства характеризуется числомпикселей на единицу длины в один дюйм. В комплект программ MiKTeX входит DVI-обозреватель YAP. Схема его работы представлена на рис. 1.4. Примернотак же работают другие современные DVI-обозреватели. Поскольку в файл dviне внедрены шрифты и рисунки, они должны присутствовать на жёстком дискекомпьютера в момент работы YAP. К достоинствам YAP относится его способностьиспользовать векторные шрифты PostScript (pfb), а также TrueType и OpenType(ttf).
Программа YAP автоматически генерирует растровые шрифты (pk) из векторных шрифтов (mf, pfb, ttf). Она также имеет средства обратного поиска:при двойном клике указателем мышки в какой-нибудь части окна YAP происхо-44Глава 1. Пособие для начинающихРис. 1.4. Визуализация документа DVIРис. 1.5. Визуализация документа PDFРис. 1.6. Преобразование документа DVI в PostScript1.14.
Ходит информация по кругуРис. 1.7. Визуализация документа PostScriptРис. 1.8. Преобразование документа PostScript в PDFРис. 1.9. Преобразование документа DVI в PDF4546Глава 1. Пособие для начинающихдит переход к соответствующему исходному тексту в окне редактора. Печать ивывод на экран дисплея документов PDF выполняет программа Adobe Reader12 ,бесплатно распространяемая фирмой Adobe. Имеется также более изощреннаякоммерческая версия этой программы, известная под названием Adobe Acrobat.На рис. 1.5 Adobe Reader и Adobe Acrobat обозначены одним словом adobe. Вследствие доступности программы Adobe Reader документ PDF легко переносить содного компьютера на другой и даже экспонировать на Web сайтах, посколькуAdobe Reader легко встраивается в Web браузеры.
Если в документ PDF внедрены не все необходимые шрифты, Adobe Reader может их догружать в моментоткрытия документа с жёсткого диска компьютера получателя документа (конечно, если они там имеются).Вместо Adobe Reader можно использовать программу GSview. Она представляет собой графический интерфейс к библиотеке программ Ghostscript.
Эта библиотека поставляется отдельно от системы LATEX, но де-факто является её неотъемлемой составной частью. Многие DVI-обозреватели используют Ghostscriptдля показа на экране дисплея и печати рисунков PostScript.Язык описания страниц PostScript является предшественником формата PDFи также разработан фирмой Adobe. Преобразование файла dvi в PostScript-файл(c расширением ps) производит программа dvips согласно схеме на рис. 1.6.
Интерпретаторы языка PostScript встроены во многие принтеры, поэтому ps-файлдостаточно скопировать («отправить») на такой принтер, чтобы напечатать.Если выходное устройство (например, экран монитора) не имеет встроенногоинтерпретатора, документ PostScript можно просмотреть и напечатать с помощью программы GSview, как показано на рис. 1.7. В настоящее время необходимость в преобразовании документа LATEX в PostScript возникает редко.
В качествепримера можно упомянуть разве что случай, когда требуется разместить на одном листе несколько страниц документа для последующей печати в виде буклета,получить зеркальное или негативное изображение. Поскольку PostScript по сутидела является языком программирования, все такие операции легко выполнитьпрограммным образом (раздел 17.5).Многие пользователи привыкли к программе dvips, которая оказала существенное влияние на эволюцию системы LATEX. Мы упомянули эту программуглавным образом для того, чтобы упростить таким пользователям переход к современным способам компиляции документов LATEX.Рисунки 1.8 и 1.9 иллюстрируют ещё два варианта преобразования файловps и dvi в pdf, в значительной мере утративших свою актуальность.
PostScriptфайл можно преобразовать в pdf при помощи программ Ghostscript или AdobeDistiller. Соответствующий пункт меню редактора WinEdt называется ps2pdf(рис. 1.8). Для получения pdf из dvi-файла следует использовать программуdvipdfm (рис. 1.9). Мы не будем здесь детально обсуждать, когда имело смыслиспользовать подобные многоступенчатые способы получения PDF документов,а лишь посоветуем Читателю обратиться за пояснениями к главе 10.12До версии 5 включительно она называлась Acrobat Reader.Да закройте же скобки, мужчина!Вл. Вишневский. ОдностишьяГлава 2Команды и процедурыОбщие правила синтаксиса LATEX’а объясним на примере команды\documentclass[options]{class}[release-date]Условимся, что текст, набранный машинописным шрифтом, как \documentclass,квадратные и фигурные скобки, следует вводить во входной файл в буквальном соответствии с определением команды.
Напротив, текст, набранный прямым курсивом: options, class, release-date,— может изменяться. В данном случае\documentclass — это имя команды, а options, class и release-date — аргументы команды. Аргумент в фигурных скобках является обязательным. Он иногдаможет быть пустым — {} (даже без пробела между скобками), но пропуск самихфигурных скобок обычно1 приводит к ошибке.
Аргументы в квадратных скобках [ ] не обязательны. Их часто называют опциями. Все или некоторые опции(вместе с квадратными скобками) могут быть опущены, так что краткая формакоманды \documentclass такова:\documentclass{class}Пропущенные необязательные аргументы принимают значения по умолчанию.Если синтаксис команды допускает два необязательных аргумента, идущих одинза другим, а использован только один, предполагается, что указан первый, аопущен второй. Всё не существенное в текущем контексте будем заменять многоточием.
Так, если бы не было необходимости объяснять смысл обозначения class,то приведённый выше пример мог быть таким:\documentclass{...}Определения команд мы будем заключать в рамку в отличие от примеров их применения. Наиболее важные упоминания той или иной команды в книге можноотыскать при помощи алфавитного указателя, причём номера страниц с определениями команд и процедур выделены в указателе курсивом.Пробелы между аргументами команд, а также между именем команды и первым аргументом игнорируются.Аргумент команды можно не заключать в фигурные скобки, если он состоит из одного символа или одной команды, не имеющей собственных аргументов.148Глава 2.
Команды и процедуры2.1.Имя командыШесть команд:#$&~_^имеют имя, состоящее только из одного символа. Символ % не считается командой, но указывает, что компилятор должен игнорировать всё, что следует за нимдо конца строки; % используется, чтобы отделить комментарий или начать новуюстроку без ввода пробелов в конце предыдущей. Например:абрака% Это комментарийдабраабракадабраВсе другие команды обычно начинаются с символа \ (обратный слеш), причём одна команда состоит только из этого символа, за которым следует пробел2 .Поскольку для обозначения обязательного пробела принято использовать символ␣, эта команда записывается в виде \␣.Особую группу образуют команды, которые состоят из \ и одного символа, неявляющегося буквой.
Читателю уже известно, что команда \, (обратный слешс запятой) добавляет пробел и может использоваться для раздвижения кавычек(здесь можно попробовать отыскать при помощи алфавитного указателя соответствующий пример в первой главе). Ещё одна команда \\ из этой группы встретилась нам в строке 56 в примере входного файла в разделе 1.3. Она вызываетпринудительный переход на новую строку в печатном документе.В именах остальных команд за символом \ следует одна или несколько буквлатинского алфавита.
Признаком конца имени такой команды служит любойсимвол, не являющийся латинской буквой, а именно: цифра, знак препинания3 ,знаки математических операций (кроме *), пробелы, служебные символы, а также русские буквы. Все специальные символы, которые могут быть признакомконца имени команды, перечислены в разделе 1.4.
Имя команды нельзя разбитьна части для переноса между соседними строками даже с помощью %.При компиляции исходного текста буквы русского алфавита транслируютсяв команды \cyrcmd или \CYRcmd. Это подтверждает следующий пример:\CYRR\cyru\cyrs\cyrs\cyrk\cyri\cyrishrt\\CYRYA\cyrz\cyrery\cyrkРусский ЯзыкИсходный текст на русском языке, набранный в командах \cyrcmd и \CYRcmd,будет правильно откомпилирован без перекодировки системой LATEX, работающей на любой платформе.
В явном виде команды \cyrcmd и \CYRcmd используются только внутри пакетов — так обеспечивается переносимость пакетов междукомпьютерами разных типов. Трансляцию русских букв в команды в процессе компиляции исходного текста производит пакет inputenc.
Поскольку русскиеПакет babel вводит команды, которые начинаются с символа двойных кавычек ", но мы нерекомендуем использовать такие команды.3 Команды с именами, содержащими символ @, относящийся к знакам препинания, могут использоваться в служебных файлах с расширениями cls, clo, sty.2492.2. Аргументыбуквы по сути являются командами, их нельзя использовать в именах других команд. Любая русская буква будет воспринята компилятором в качестве признакаконца имени команды.Чаще всего за именем команды следует левая фигурная или квадратная скобка, открывающая аргумент, или пробел, если аргументов нет.