Приложение Ж. Откуда взять TeX?
Изготовление PostScript-файлов
Теперь следует опробовать работу с PostScript-файлами. Начнем с их создания: находясь все в той же директории, где лежат файлы test.tex и test.dvi, дайте команду
dvips -o test.ps test.dvi
Она выдаст на экран сообщение наподобие следующего:
This is dvips(k) 5.86 Copyright 1999 Radical Eye Software (www.radicaleye.com) ` TeX output 2002.07.21:2137' -> test.ps <texc.pro> [1]
в котором [1] выдается при обработке первой страницы (для более длинных файлов страниц будет, естественно, больше). При этом создается файл test.ps.
Ради любопытства можно заглянуть в него с помощью команды less: там написано что-то вроде
%!PS-Adobe-2.0 %%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software <...> userdict /end-hook known{end-hook}if %%EOF
(когда мы провели эксперимент, в этом файле оказалось строк).
Просмотр PostScript-файла
На практике, естественно, читать PostScript-файл невооруженным глазом не надо, а надо просматривать его с помощью команды gv (или ghostview). Дайте команду
gv test.ps
и убедитесь, что на экране появляется окно, в котором изображена первая (в данном случае и единственная) страница вашего файла. В этой программе также можно использовать клавиши Page Up и Page Down (переключаться между страницами можно также с помощью мыши и списка страниц слева). Увеличение регулируется в меню сверху. Есть и много других пунктов меню, которые можно опробовать. В частности, средней кнопкой мыши можно пометить некоторые избранные страницы, а затем записать их в файл (это будет PostScript-файл только с избранными страницами) с помощью кнопок меню. Можно также и напечатать избранные страницы, но в этом случае программа запрашивает, какова команда печати, поэтому лучше опробовать печать отдельно.
Печать PostScript-файла
Печать осуществляется командой
lpr test.ps
Правда, для этого должна быть настроена система печати. В многопользовательских системах настройка принтеров — задача системного администратора, который должен сообщить пользователям, как печатать файлы. (А задача пользователей — " достать" системного администратора настолько, чтобы он наладил бесперебойную работу принтеров.) На домашнем компьютере вы сами себе системный администратор, и печать придется настраивать самому или с помощью друзей. К сожалению, это очень по-разному делается в разных версиях UNIX и даже в разных дистрибутивах. В современных дистрибутивах Linux (типа RedHat или Mandrake) при настройке печати могут помочь специальные графические оболочки (например, printtool в RedHat Linux).
Подчеркнем, что вовсе не обязательно иметь PostScript-принтер, чтобы печатать PostScript-файлы. На самом деле годится почти любой принтер (который работает с операционными системами, отличными от Windows; избегайте неполноценных "Windows-only" принтеров). Система печати автоматически обрабатывает ваш файл с помощью программы Ghostscript, так что вам (если все настроено правильно) не о чем беспокоиться.
Дополнительная информация
Описанных команд достаточно для полного цикла работы с системой LaTeX. Но есть и другие полезные возможности.
- Программа ps2pdf преобразует PostScript-файлы в
файлы
в формате PDF. Это удобно, если ваши читатели испытывают трудности
с чтением PostScript-файлов, но умеют читать PDF-файлы. Программа
ps2pdf использует Ghostscript и вызывается командой типа
ps2pdf test.ps test.pdf
- Файлы в PDF-формате (не все, но большинство) можно просматривать программой gv (ghostview). Она же позволяет сохранить (save) файл в формате PostScript. Это же можно сделать с помощью программы Acrobat Reader фирмы Adobe (которая также распространяется бесплатно, но с некоторыми ограничениями). Наконец, есть программа pdf2ps, которая также использует Ghostscript и переводит PDF-файлы в PostScript-файлы.
- Имеются программы,
позволяющие вырезать отдельные страницы (psselect), сливать
(psmerge), изменять масштаб и собирать по несколько страниц
на одну (psnup и более изощренная pstops),
переставлять страницы для брошюровки (psbook)
и многое другое. Они распространяются свободно и обычно также
входят в дистрибутив UNIX-подобной операционной системы.
Например, команда
создает файл text2.ps, каждая страница которого представляет собой две уменьшенные с коэффициентом страницы файла text.ps (меняя числа, можно регулировать уменьшение и сдвиг). Командаpstops "2:0L@0.7(21cm,0)+1L@0.7(21cm,14.85cm)" text.ps text2.ps
помещает в text2.ps страницы -- файла text.ps (можно оставить все страницы, начиная с пятой, если написать 5-). Более подробные сведения об этих и других программах можно получить, сказав (например) man pstops.psselect 5-26 text.ps text2.ps
Учтите, что эти программы работают не для любых PostScript-файлов (но обычно работают с файлами, выдаваемыми программойdvips). Зато они, к слову сказать, совсем маленькие (и написаны на языке C без всяких системно-зависимых хитростей).
- Файлы, относящиеся к TeX'у (включая документацию), в основном сосредоточены в специальной директории. В системе Linux это обычно директория /usr/share/texmf, в системе FreeBSD это может быть директория /usr/local/share/texmf. Кроме того, TeX может помещать создаваемые им файлы (например, файлы шрифтов) в директорию типа /var/lib/texmf.
- Для проверки наличия
файлов (в тех местах, где их будут искать TeX-программы)
может быть полезна программа kpsewhich:
например, в ответ на командуможет быть выдано сообщение типа
kpsewhich graphicx.sty
с полным адресом этого файла./usr/share/texmf/tex/latex/graphics/graphicx.sty
- Имеется программа mpost (иногда \mp, но часто mp обозначает другую программу), полезная для изготовления PostScript-рисунков. Полное название этой программы, сообщаемое при ее вызове, — metapost.
- Есть несколько наборов программ (\NetPBM и
ImageMagick, например),
позволяющих преобразовывать графические файлы из одних форматов в
другие. Например, чтобы преобразовать pcx-файл
picture.pcx в формат PostScript (точнее,
Encapsulated PostScript) с помощью программы convert,
входящей в пакет ImageMagick, достаточно сказатьСуществует также (свободно распространяемый) графический редактор gimp, который умеет читать и записывать файлы различных форматов.
convert picture.pcx picture.eps